@@ -74,6 +74,10 @@ RL_LIB *RL; // Link back to reb-lib from embedded extensions (like for now: host
74
74
// Semaphore lock to sync sub-task launch:
75
75
static void * Task_Ready ;
76
76
77
+ #ifdef REB_VIEW
78
+ void Dispose_Windows (void );
79
+ #endif
80
+
77
81
78
82
/***********************************************************************
79
83
**
@@ -422,7 +426,7 @@ static void *Task_Ready;
422
426
// OS_Put_Str(title);
423
427
// OS_Put_Str(":\n");
424
428
// Use ASCII only (in case we are on non-unicode win32):
425
- MessageBoxA (NULL , content , title , MB_ICONHAND );
429
+ MessageBoxA (NULL , ( LPCSTR ) content , ( LPCSTR ) title , MB_ICONHAND );
426
430
}
427
431
// OS_Put_Str(content);
428
432
exit (100 );
@@ -615,7 +619,7 @@ static void *Task_Ready;
615
619
LARGE_INTEGER time ;
616
620
617
621
if (!QueryPerformanceCounter (& time ))
618
- OS_Crash (cb_cast ("Missing resource" ), "High performance timer" );
622
+ OS_Crash (cb_cast ("Missing resource" ), cb_cast ( "High performance timer" ) );
619
623
620
624
if (base == 0 ) return time .QuadPart ; // counter (may not be time)
621
625
@@ -1297,8 +1301,8 @@ static void *Task_Ready;
1297
1301
{
1298
1302
#define MAX_BRW_PATH 2044
1299
1303
long flag ;
1300
- long len ;
1301
- long type ;
1304
+ DWORD len ;
1305
+ DWORD type ;
1302
1306
HKEY key ;
1303
1307
REBCHR * path ;
1304
1308
HWND hWnd = GetFocus ();
@@ -1394,7 +1398,7 @@ static INT CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPAR
1394
1398
break ;
1395
1399
}
1396
1400
if (lpData && set ) {
1397
- SendMessage (hwnd , BFFM_SETSELECTION , lpLastBrowseFolder != lpData , lpData );
1401
+ SendMessage (hwnd , BFFM_SETSELECTION , lpLastBrowseFolder != ( LPITEMIDLIST ) lpData , lpData );
1398
1402
}
1399
1403
return 0 ;
1400
1404
}
@@ -1414,11 +1418,15 @@ static INT CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPAR
1414
1418
bInfo .lpszTitle = fr -> title ; // Title of the dialog
1415
1419
bInfo .ulFlags = BIF_USENEWUI | BIF_RETURNONLYFSDIRS ;
1416
1420
bInfo .lpfn = BrowseCallbackProc ;
1421
+ bInfo .iImage = -1 ;
1417
1422
// start in dir location is used /dir
1423
+ if (dir ) {
1424
+ bInfo .lParam = (LPARAM )dir ;
1425
+ }
1418
1426
// else use last keeped result if used /keep
1419
- // else NULL if no / keep and /dir is there
1420
- bInfo .lParam = (dir ) ? dir : ( keep ) ? lpLastBrowseFolder : NULL ;
1421
- bInfo . iImage = -1 ;
1427
+ else if ( keep ) {
1428
+ bInfo .lParam = (LPARAM ) lpLastBrowseFolder ;
1429
+ }
1422
1430
1423
1431
LPITEMIDLIST lpItem = SHBrowseForFolder ( & bInfo );
1424
1432
if (lpItem == NULL ) {
@@ -1428,7 +1436,7 @@ static INT CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lParam, LPAR
1428
1436
if (keep ) {
1429
1437
// release last result if there was any
1430
1438
if (lpLastBrowseFolder )
1431
- CoTaskMemFree (lpLastBrowseFolder );
1439
+ CoTaskMemFree (( LPVOID ) lpLastBrowseFolder );
1432
1440
// and store result for next request
1433
1441
lpLastBrowseFolder = lpItem ;
1434
1442
}
0 commit comments