Changeset 21463 for trunk/src


Ignore:
Timestamp:
Sep 29, 2010, 12:46:01 AM (15 years ago)
Author:
dmik
Message:

Undo interpreting strings as ANSI for certain OSLib APIs modified in the previous commits as it breaks the common logic where many other OSLib calls (e.g. all dealig with file names) seem to expect the OEM (OS/2) encoding.

Location:
trunk/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/oslibmisc.cpp

    r21462 r21463  
    2323#include <malloc.h>  /*PLF Wed  98-03-18 05:15:04*/
    2424#include "oslibmisc.h"
    25 #include "win32api.h"
    2625#include <misc.h>
    2726#include <odincrt.h>
     
    347346void OSLibSetBeginLibpath(char *lpszBeginlibpath)
    348347{
    349     PSZ psz = NULL;
    350     if (lpszBeginlibpath) {
    351         psz = (PSZ)malloc(strlen(lpszBeginlibpath) + 1);
    352         CharToOemA(lpszBeginlibpath, psz);
    353     }
    354     DosSetExtLIBPATH(psz, BEGIN_LIBPATH);
    355     if (psz) {
    356         free(psz);
    357     }
     348    DosSetExtLIBPATH(lpszBeginlibpath, BEGIN_LIBPATH);
    358349}
    359350//******************************************************************************
     
    362353{
    363354    DosQueryExtLIBPATH(lpszBeginlibpath, BEGIN_LIBPATH);
    364     OemToCharA(lpszBeginlibpath, lpszBeginlibpath);
    365355}
    366356//******************************************************************************
  • trunk/src/kernel32/wprocess.cpp

    r21462 r21463  
    19841984//******************************************************************************
    19851985//******************************************************************************
     1986static void OSLibSetBeginLibpathA(char *lpszBeginlibpath)
     1987{
     1988    PSZ psz = NULL;
     1989    if (lpszBeginlibpath) {
     1990        psz = (PSZ)malloc(strlen(lpszBeginlibpath) + 1);
     1991        CharToOemA(lpszBeginlibpath, psz);
     1992    }
     1993    OSLibSetBeginLibpath(psz);
     1994    if (psz) {
     1995        free(psz);
     1996    }
     1997}
     1998//******************************************************************************
     1999//******************************************************************************
     2000static void OSLibQueryBeginLibpathA(char *lpszBeginlibpath, int size)
     2001{
     2002    OSLibQueryBeginLibpath(lpszBeginlibpath, size);
     2003    OemToCharA(lpszBeginlibpath, lpszBeginlibpath);
     2004}
     2005//******************************************************************************
     2006//******************************************************************************
    19862007BOOL WINAPI CreateProcessA( LPCSTR lpApplicationName, LPSTR lpCommandLine,
    19872008                            LPSECURITY_ATTRIBUTES lpProcessAttributes,
     
    22002221            if(oldlibpath)
    22012222            {
    2202                 OSLibQueryBeginLibpath(oldlibpath, 4096);
     2223                OSLibQueryBeginLibpathA(oldlibpath, 4096);
    22032224
    22042225                char *tmp = strrchr(szAppName, '\\');
    22052226                if(tmp) *tmp = 0;
    22062227
    2207                 OSLibSetBeginLibpath(szAppName);
     2228                OSLibSetBeginLibpathA(szAppName);
    22082229                if(tmp) *tmp = '\\';
    22092230
     
    23582379
    23592380    if(oldlibpath) {
    2360         OSLibSetBeginLibpath(oldlibpath);
     2381        OSLibSetBeginLibpathA(oldlibpath);
    23612382        free(oldlibpath);
    23622383    }
  • trunk/src/user32/oslibwin.cpp

    r21461 r21463  
    562562LONG OSLibWinQueryWindowText(HWND hwnd, LONG length, LPSTR lpsz)
    563563{
    564     LONG retLen = WinQueryWindowText(hwnd, length, lpsz);
    565     OemToCharBuffA(lpsz, lpsz, retLen);
    566     lpsz[retLen] = '\0';
    567     return retLen;
     564  return WinQueryWindowText(hwnd, length, lpsz);
    568565}
    569566//******************************************************************************
     
    571568BOOL OSLibWinSetWindowText(HWND hwnd, LPSTR lpsz)
    572569{
    573     PSZ psz = NULL;
    574     if(lpsz) {
    575         psz = (PSZ)_smalloc(strlen(lpsz) + 1);
    576         CharToOemA(lpsz, psz);
    577     }
    578     BOOL rc = WinSetWindowText(hwnd, psz);
    579     if (psz) {
    580         _sfree(psz);
    581     }
    582     return rc;
     570  return WinSetWindowText(hwnd, lpsz);
    583571}
    584572//******************************************************************************
     
    586574BOOL OSLibWinSetTitleBarText(HWND hwnd, LPSTR lpsz)
    587575{
    588     PSZ psz = NULL;
    589     if(lpsz) {
    590         psz = (PSZ)_smalloc(strlen(lpsz) + 1);
    591         CharToOemA(lpsz, psz);
    592     }
    593     BOOL rc = WinSetWindowText(WinWindowFromID(hwnd, FID_TITLEBAR), psz);
    594     if (psz) {
    595         _sfree(psz);
    596     }
    597     return rc;
     576  return WinSetWindowText(WinWindowFromID(hwnd, FID_TITLEBAR), lpsz);
    598577}
    599578//******************************************************************************
  • trunk/src/user32/win32wbase.cpp

    r21372 r21463  
    528528//******************************************************************************
    529529//******************************************************************************
     530static BOOL OSLibWinSetTitleBarTextA(HWND hwnd, LPSTR lpsz)
     531{
     532    LPSTR psz = NULL;
     533    if(lpsz) {
     534        psz = (LPSTR)_smalloc(strlen(lpsz) + 1);
     535        CharToOemA(lpsz, psz);
     536    }
     537    BOOL rc = OSLibWinSetTitleBarText(hwnd, psz);
     538    if (psz) {
     539        _sfree(psz);
     540    }
     541    return rc;
     542}
     543//******************************************************************************
     544//******************************************************************************
    530545BOOL Win32BaseWindow::MsgCreate(HWND hwndOS2)
    531546{
     
    620635
    621636        if(fOS2Look) {
    622             OSLibWinSetTitleBarText(OS2HwndFrame, windowNameA);
     637            OSLibWinSetTitleBarTextA(OS2HwndFrame, windowNameA);
    623638        }
    624639    }
     
    16351650            }
    16361651            if(fOS2Look) {
    1637                 OSLibWinSetTitleBarText(OS2HwndFrame, getWindowNameA());
     1652                OSLibWinSetTitleBarTextA(OS2HwndFrame, getWindowNameA());
    16381653            }
    16391654        }
     
    22112226            }
    22122227            if(fOS2Look) {
    2213                 OSLibWinSetTitleBarText(OS2HwndFrame, getWindowNameA());
     2228                OSLibWinSetTitleBarTextA(OS2HwndFrame, getWindowNameA());
    22142229            }
    22152230        }
Note: See TracChangeset for help on using the changeset viewer.