comparison loader/resource.c @ 7386:174e2a58b4cd

avifile sync - 95% cosmetics 5% bug
author arpi
date Fri, 13 Sep 2002 19:43:17 +0000
parents d8c1b0b38edc
children 6e35326c742f
comparison
equal deleted inserted replaced
7385:e2fcdd7608b1 7386:174e2a58b4cd
2 * Resources 2 * Resources
3 * 3 *
4 * Copyright 1993 Robert J. Amstadt 4 * Copyright 1993 Robert J. Amstadt
5 * Copyright 1995 Alexandre Julliard 5 * Copyright 1995 Alexandre Julliard
6 */ 6 */
7 #include <config.h> 7 #include "config.h"
8 8
9 #include <assert.h> 9 #include <assert.h>
10 #include <stdio.h> 10 #include <stdio.h>
11 #include <stdlib.h> 11 #include <stdlib.h>
12 #include <string.h> 12 #include <string.h>
13 #include <sys/types.h> 13 #include <sys/types.h>
14 #include <sys/stat.h> 14 #include <sys/stat.h>
15 #include <fcntl.h> 15 #include <fcntl.h>
16 #include <unistd.h> 16 #include <unistd.h>
17 #include <wine/winbase.h> 17
18 #include <wine/windef.h> 18 #include "wine/winbase.h"
19 #include <wine/winuser.h> 19 #include "wine/windef.h"
20 #include <wine/heap.h> 20 #include "wine/winuser.h"
21 #include <wine/module.h> 21 #include "wine/heap.h"
22 #include <wine/debugtools.h> 22 #include "wine/module.h"
23 #include <wine/winerror.h> 23 #include "wine/debugtools.h"
24 #include <loader.h> 24 #include "wine/winerror.h"
25 #include "loader.h"
25 26
26 #define CP_ACP 0 27 #define CP_ACP 0
27 28
28 WORD WINE_LanguageId=0x409;//english 29 WORD WINE_LanguageId=0x409;//english
29 30
279 if ( !wbuflen ) 280 if ( !wbuflen )
280 return 0; 281 return 0;
281 wbuflen ++; 282 wbuflen ++;
282 283
283 retval = 0; 284 retval = 0;
284 wbuf = HeapAlloc( GetProcessHeap(), 0, wbuflen * sizeof(WCHAR) ); 285 wbuf = (LPWSTR) HeapAlloc( GetProcessHeap(), 0, wbuflen * sizeof(WCHAR) );
285 wbuflen = LoadStringW(instance,resource_id,wbuf,wbuflen); 286 wbuflen = LoadStringW(instance,resource_id,wbuf,wbuflen);
286 if ( wbuflen > 0 ) 287 if ( wbuflen > 0 )
287 { 288 {
288 abuflen = WideCharToMultiByte(CP_ACP,0,wbuf,wbuflen,NULL,0,NULL,NULL); 289 abuflen = WideCharToMultiByte(CP_ACP,0,wbuf,wbuflen,NULL,0,NULL,NULL);
289 if ( abuflen > 0 ) 290 if ( abuflen > 0 )
290 { 291 {
291 if ( buffer == NULL || buflen == 0 ) 292 if ( buffer == NULL || buflen == 0 )
292 retval = abuflen; 293 retval = abuflen;
293 else 294 else
294 { 295 {
295 abuf = HeapAlloc( GetProcessHeap(), 0, abuflen * sizeof(CHAR) ); 296 abuf = (LPSTR) HeapAlloc( GetProcessHeap(), 0, abuflen * sizeof(CHAR) );
296 abuflen = WideCharToMultiByte(CP_ACP,0,wbuf,wbuflen,abuf,abuflen,NULL,NULL); 297 abuflen = WideCharToMultiByte(CP_ACP,0,wbuf,wbuflen,abuf,abuflen,NULL,NULL);
297 if ( abuflen > 0 ) 298 if ( abuflen > 0 )
298 { 299 {
299 abuflen = min(abuflen,buflen - 1); 300 abuflen = min(abuflen,buflen - 1);
300 memcpy( buffer, abuf, abuflen ); 301 memcpy( buffer, abuf, abuflen );
333 RT_STRINGW ); 334 RT_STRINGW );
334 if (!hrsrc) return 0; 335 if (!hrsrc) return 0;
335 hmem = LoadResource( instance, hrsrc ); 336 hmem = LoadResource( instance, hrsrc );
336 if (!hmem) return 0; 337 if (!hmem) return 0;
337 338
338 p = LockResource(hmem); 339 p = (WCHAR*) LockResource(hmem);
339 string_num = resource_id & 0x000f; 340 string_num = resource_id & 0x000f;
340 for (i = 0; i < string_num; i++) 341 for (i = 0; i < string_num; i++)
341 p += *p + 1; 342 p += *p + 1;
342 343
343 TRACE("strlen = %d\n", (int)*p ); 344 TRACE("strlen = %d\n", (int)*p );