Changeset 5d7f0d7838b7cf53100411da6083b38becc95166
- Timestamp:
- 11/11/06 17:49:41
(2 years ago)
- Author:
- Rémi Denis-Courmont <rem@videolan.org>
- git-committer:
- Rémi Denis-Courmont <rem@videolan.org> 1163263781 +0000
- git-parent:
[de14672a43cbb0c236ecd9eba6a67f0b1d91e868]
- git-author:
- Rémi Denis-Courmont <rem@videolan.org> 1163263781 +0000
- Message:
ToLocale? -> WideCharToMultiByte? (refs #817)
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| rcf4fe30 |
r5d7f0d7 |
|
| 565 | 565 | { |
|---|
| 566 | 566 | #ifdef WIN32 |
|---|
| 567 | | char psz_local_dir[MAX_PATH]; |
|---|
| 568 | | int i_size; |
|---|
| 569 | | |
|---|
| 570 | | i_size = GetTempPath( MAX_PATH, psz_local_dir ); |
|---|
| 571 | | if( i_size <= 0 || i_size > MAX_PATH ) |
|---|
| 572 | | { |
|---|
| 573 | | if( !getcwd( psz_local_dir, MAX_PATH ) ) |
|---|
| 574 | | strcpy( psz_local_dir, "C:" ); |
|---|
| 575 | | } |
|---|
| 576 | | |
|---|
| 577 | | psz_dir = FromLocaleDup( psz_local_dir ); |
|---|
| | 567 | DWORD ret = GetTempPathW (0, NULL); |
|---|
| | 568 | wchar_t wdir[ret + 3]; // can at least old "C:" + nul |
|---|
| | 569 | wchar_t *pwdir = wdir, pwdir_free = NULL; |
|---|
| | 570 | |
|---|
| | 571 | if (GetTempPathW (ret + 1, wdir) == 0) |
|---|
| | 572 | { |
|---|
| | 573 | pwdir_free = pwdir = _wgetcwd (NULL, 0); |
|---|
| | 574 | if (pwdir == NULL) |
|---|
| | 575 | wcscpy (wdir, L"C:"); |
|---|
| | 576 | } |
|---|
| | 577 | |
|---|
| | 578 | ret = WideCharToMultiByte (CP_UTF8, 0, pwdir, -1, NULL, 0); |
|---|
| | 579 | char mbdir[ret]; |
|---|
| | 580 | WideCharToMultiByte (CP_UTF8, 0, pwdir, -1, mbdir, ret); |
|---|
| | 581 | if (pwdir_free != NULL) |
|---|
| | 582 | free (pwdir_free); |
|---|
| 578 | 583 | |
|---|
| 579 | 584 | /* remove last \\ if any */ |
|---|
| 580 | | if( psz_dir[strlen(psz_dir)-1] == '\\' ) |
|---|
| 581 | | psz_dir[strlen(psz_dir)-1] = '\0'; |
|---|
| | 585 | if (mbdir[strlen (mbdir) - 1] == '\\') |
|---|
| | 586 | mbdir[strlen (mbdit) - 1] = '\0'; |
|---|
| | 587 | |
|---|
| | 588 | psz_dir = strdup (mbdir); |
|---|
| 582 | 589 | #else |
|---|
| 583 | 590 | psz_dir = strdup( "/tmp" ); |
|---|