Skip to content

Commit 3d39159

Browse files
committed
delete FindTempDirectoryA for simplicity
1 parent 0295316 commit 3d39159

File tree

1 file changed

+8
-61
lines changed

1 file changed

+8
-61
lines changed

win32ss/user/user32/windows/cursoricon.c

Lines changed: 8 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -34,59 +34,6 @@ typedef struct
3434
} CURSORICONFILEDIR;
3535
#include "poppack.h"
3636

37-
CHAR* FindTempDirectoryA(void)
38-
{
39-
static CHAR lpTempPathBuffer[MAX_PATH];
40-
CHAR *out = lpTempPathBuffer;
41-
DWORD dwRetVal = 0;
42-
FILE * fp;
43-
DWORD dwAttrib;
44-
45-
/* Gets the temp path env string. Not guaranteed to be valid. */
46-
dwRetVal = GetTempPathA(MAX_PATH, lpTempPathBuffer);
47-
48-
if (dwRetVal > MAX_PATH || (dwRetVal == 0))
49-
{
50-
ERR("Find Temp Directory Failed\n");
51-
goto exit_error;
52-
}
53-
54-
dwAttrib = GetFileAttributesA(lpTempPathBuffer);
55-
if (dwAttrib != INVALID_FILE_ATTRIBUTES &&
56-
(dwAttrib & FILE_ATTRIBUTE_DIRECTORY))
57-
TRACE("Temp Subdir OK\n");
58-
else
59-
goto exit_error;
60-
61-
if (dwRetVal + sizeof("bmpout.ico1")> MAX_PATH)
62-
{
63-
ERR("Not Enough working room\n");
64-
goto exit_error;
65-
}
66-
else
67-
{
68-
strcat(lpTempPathBuffer, "bmpout.ico1");
69-
}
70-
71-
fp = fopen(lpTempPathBuffer, "wb");
72-
if (!fp)
73-
{
74-
ERR("Temp Directory Path File Open Failed\n");
75-
goto exit_error;
76-
}
77-
else
78-
{
79-
fclose(fp);
80-
}
81-
82-
remove(lpTempPathBuffer);
83-
lpTempPathBuffer[strlen(lpTempPathBuffer) - 1] = 0;
84-
85-
return out;
86-
exit_error:
87-
return 0;
88-
}
89-
9037
WCHAR* FindTempDirectoryW(void)
9138
{
9239
static WCHAR lpTempPathBuffer[MAX_PATH + 1];
@@ -175,7 +122,7 @@ void PNGtoBMP(_In_ LPBYTE pngbits, _In_ DWORD filesize, _Out_ LPBYTE outbits)
175122
int bpp = 0;
176123
int image_size = 0;
177124
FILE * fp;
178-
CHAR lpTempPathBuffer[MAX_PATH + 1];
125+
WCHAR lpTempPathBuffer[MAX_PATH + 1];
179126
MEMORY_READER_STATE memory_reader_state;
180127
png_bytep mem_read_ptr = (png_bytep)&memory_reader_state;
181128
png_uint_32 width, height, channels;
@@ -289,12 +236,12 @@ void PNGtoBMP(_In_ LPBYTE pngbits, _In_ DWORD filesize, _Out_ LPBYTE outbits)
289236
pos+=(stride*width) % 4;
290237
}
291238

292-
if (FindTempDirectoryA() == NULL)
239+
if (FindTempDirectoryW() == NULL)
293240
ERR("Temp Directory Not Found\n");
294241
else
295242
{
296-
strcpy(lpTempPathBuffer, FindTempDirectoryA());
297-
TRACE("Temp File Name is %s\n", lpTempPathBuffer);
243+
wcscpy(lpTempPathBuffer, FindTempDirectoryW());
244+
TRACE("Temp File Name is %S\n", lpTempPathBuffer);
298245
}
299246

300247
/* Clean up after the read, and free any memory allocated */
@@ -328,16 +275,16 @@ void PNGtoBMP(_In_ LPBYTE pngbits, _In_ DWORD filesize, _Out_ LPBYTE outbits)
328275
return;
329276
}
330277

331-
remove(lpTempPathBuffer);
332-
fp = fopen(lpTempPathBuffer, "ab");
278+
_wremove(lpTempPathBuffer);
279+
fp = _wfopen(lpTempPathBuffer, L"ab");
333280
if (!fp)
334281
{
335-
ERR("File Open Failed for '%s'.\n", lpTempPathBuffer);
282+
ERR("File Open Failed for '%S'.\n", lpTempPathBuffer);
336283
}
337284

338285
if (fp == INVALID_HANDLE_VALUE)
339286
{
340-
ERR("can't write '%s'\n", lpTempPathBuffer);
287+
ERR("can't write '%S'\n", lpTempPathBuffer);
341288
GlobalFree(data);
342289
return;
343290
}

0 commit comments

Comments
 (0)