Changeset 9888 for trunk/src


Ignore:
Timestamp:
Mar 3, 2003, 5:35:59 PM (22 years ago)
Author:
sandervl
Message:

Shelllink: use kernel32 file functions instead of those from the VAC crt

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/shell32/shelllink.c

    r9851 r9888  
    2727#include "undocshell.h"
    2828#ifdef __WIN32OS2__
     29#include <winbase.h>
    2930#define NO_DCDATA
    3031#include <winuser32.h>
     
    265266static BOOL SaveIconFileAsOS2ICO(char *szFileName, char *szXPMFileName)
    266267{
    267     FILE *fXPMFile = NULL, *fICOFile = NULL;
     268    HFILE fXPMFile = NULL, fICOFile = NULL;
    268269    void *lpOS2Icon = NULL, *lpWinIcon = NULL;
    269270    DWORD ressize, filesize;
    270271    BOOL  ret = FALSE;
    271272
    272     if (!(fICOFile = fopen(szFileName, "r")))
     273    if (!(fICOFile = _lopen(szFileName, OF_READ)))
    273274        goto failure;
    274     fseek(fICOFile, 0, SEEK_END);
    275     filesize = ftell(fICOFile);
    276     fseek(fICOFile, 0, SEEK_SET);
     275    _llseek(fICOFile, 0, FILE_END);
     276    filesize = _llseek(fICOFile, 0, FILE_CURRENT);
     277    _llseek(fICOFile, 0, FILE_BEGIN);
    277278
    278279    lpWinIcon = malloc(filesize);
    279280    if(lpWinIcon == NULL) goto failure;
    280     if (fread(lpWinIcon, filesize, 1, fICOFile) != 1)
     281    if (_lread(fICOFile, lpWinIcon, filesize) != filesize)
    281282        goto failure;
    282283
    283     if (!(fXPMFile = fopen(szXPMFileName, "wb")))
     284    if (!(fXPMFile = _lcreat(szXPMFileName, OF_READWRITE)))
    284285        goto failure;
    285286
    286287    lpOS2Icon = ConvertIconGroupIndirect(lpWinIcon, filesize, &ressize);
    287288    if(lpOS2Icon) {
    288         fwrite(lpOS2Icon, 1, ressize, fXPMFile);
     289        _lwrite(fXPMFile, lpOS2Icon, ressize);
    289290    }
    290291    ret = TRUE;
    291292
    292293failure:
    293     if(fICOFile) fclose(fICOFile);
    294     if(fXPMFile) fclose(fXPMFile);
     294    if(fICOFile) _lclose(fICOFile);
     295    if(fXPMFile) _lclose(fXPMFile);
    295296    if(lpWinIcon) free(lpWinIcon);
    296297    if(lpOS2Icon) free(lpOS2Icon);
Note: See TracChangeset for help on using the changeset viewer.