Alexandre Julliard : kernel32: Move the 16-bit string functions to kernel16 .c.

Alexandre Julliard julliard at winehq.org
Thu Oct 8 08:57:11 CDT 2009


Module: wine
Branch: master
Commit: 3b1186de5aeabd261e70dab8b78a730030075ca1
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=3b1186de5aeabd261e70dab8b78a730030075ca1

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Oct  7 17:14:10 2009 +0200

kernel32: Move the 16-bit string functions to kernel16.c.

---

 dlls/kernel32/kernel16.c |  129 +++++++++++++++++++++++++++++++++++++++++
 dlls/kernel32/string.c   |  145 ----------------------------------------------
 2 files changed, 129 insertions(+), 145 deletions(-)

diff --git a/dlls/kernel32/kernel16.c b/dlls/kernel32/kernel16.c
index c5683db..795baab 100644
--- a/dlls/kernel32/kernel16.c
+++ b/dlls/kernel32/kernel16.c
@@ -86,6 +86,135 @@ BOOL WINAPI KERNEL_DllEntryPoint( DWORD reasion, HINSTANCE16 inst, WORD ds,
 }
 
 /***********************************************************************
+ *		Reserved1 (KERNEL.77)
+ */
+SEGPTR WINAPI KERNEL_AnsiNext16(SEGPTR current)
+{
+    return (*(char *)MapSL(current)) ? current + 1 : current;
+}
+
+/***********************************************************************
+ *		Reserved2(KERNEL.78)
+ */
+SEGPTR WINAPI KERNEL_AnsiPrev16( SEGPTR start, SEGPTR current )
+{
+    return (current==start)?start:current-1;
+}
+
+/***********************************************************************
+ *		Reserved3 (KERNEL.79)
+ */
+SEGPTR WINAPI KERNEL_AnsiUpper16( SEGPTR strOrChar )
+{
+    /* uppercase only one char if strOrChar < 0x10000 */
+    if (HIWORD(strOrChar))
+    {
+        char *s = MapSL(strOrChar);
+        while (*s)
+        {
+            *s = toupper(*s);
+            s++;
+        }
+        return strOrChar;
+    }
+    else return toupper((char)strOrChar);
+}
+
+/***********************************************************************
+ *		Reserved4 (KERNEL.80)
+ */
+SEGPTR WINAPI KERNEL_AnsiLower16( SEGPTR strOrChar )
+{
+    /* lowercase only one char if strOrChar < 0x10000 */
+    if (HIWORD(strOrChar))
+    {
+        char *s = MapSL(strOrChar);
+        while (*s)
+        {
+            *s = tolower(*s);
+            s++;
+        }
+        return strOrChar;
+    }
+    else return tolower((char)strOrChar);
+}
+
+/***********************************************************************
+ *		Reserved5 (KERNEL.87)
+ */
+INT16 WINAPI KERNEL_lstrcmp16( LPCSTR str1, LPCSTR str2 )
+{
+    return (INT16)strcmp( str1, str2 );
+}
+
+/***********************************************************************
+ *           lstrcpy   (KERNEL.88)
+ */
+SEGPTR WINAPI lstrcpy16( SEGPTR dst, LPCSTR src )
+{
+    if (!lstrcpyA( MapSL(dst), src )) dst = 0;
+    return dst;
+}
+
+/***********************************************************************
+ *           lstrcat   (KERNEL.89)
+ */
+SEGPTR WINAPI lstrcat16( SEGPTR dst, LPCSTR src )
+{
+    /* Windows does not check for NULL pointers here, so we don't either */
+    strcat( MapSL(dst), src );
+    return dst;
+}
+
+/***********************************************************************
+ *           lstrlen   (KERNEL.90)
+ */
+INT16 WINAPI lstrlen16( LPCSTR str )
+{
+    return (INT16)lstrlenA( str );
+}
+
+/***********************************************************************
+ *           hmemcpy   (KERNEL.348)
+ */
+void WINAPI hmemcpy16( LPVOID dst, LPCVOID src, LONG count )
+{
+    memcpy( dst, src, count );
+}
+
+/***********************************************************************
+ *           lstrcpyn   (KERNEL.353)
+ */
+SEGPTR WINAPI lstrcpyn16( SEGPTR dst, LPCSTR src, INT16 n )
+{
+    lstrcpynA( MapSL(dst), src, n );
+    return dst;
+}
+
+/***********************************************************************
+ *           lstrcatn   (KERNEL.352)
+ */
+SEGPTR WINAPI lstrcatn16( SEGPTR dst, LPCSTR src, INT16 n )
+{
+    LPSTR p = MapSL(dst);
+    LPSTR start = p;
+
+    while (*p) p++;
+    if ((n -= (p - start)) <= 0) return dst;
+    lstrcpynA( p, src, n );
+    return dst;
+}
+
+/***********************************************************************
+ *           UnicodeToAnsi   (KERNEL.434)
+ */
+INT16 WINAPI UnicodeToAnsi16( LPCWSTR src, LPSTR dst, INT16 codepage )
+{
+    if ( codepage == -1 ) codepage = CP_ACP;
+    return WideCharToMultiByte( codepage, 0, src, -1, dst, 0x7fffffff, NULL, NULL );
+}
+
+/***********************************************************************
  *		EnableDos (KERNEL.41)
  *		DisableDos (KERNEL.42)
  *		GetLastDiskChange (KERNEL.98)
diff --git a/dlls/kernel32/string.c b/dlls/kernel32/string.c
index 1f606fd..c584bf7 100644
--- a/dlls/kernel32/string.c
+++ b/dlls/kernel32/string.c
@@ -141,26 +141,6 @@ INT WINAPIV k32wsprintfA(LPSTR buffer, LPCSTR spec, ...)
 
 
 /***********************************************************************
- *           hmemcpy   (KERNEL.348)
- */
-void WINAPI hmemcpy16( LPVOID dst, LPCVOID src, LONG count )
-{
-    memcpy( dst, src, count );
-}
-
-
-/***********************************************************************
- *           lstrcat   (KERNEL.89)
- */
-SEGPTR WINAPI lstrcat16( SEGPTR dst, LPCSTR src )
-{
-    /* Windows does not check for NULL pointers here, so we don't either */
-    strcat( MapSL(dst), src );
-    return dst;
-}
-
-
-/***********************************************************************
  *           lstrcatA   (KERNEL32.@)
  *           lstrcat    (KERNEL32.@)
  */
@@ -200,31 +180,6 @@ LPWSTR WINAPI lstrcatW( LPWSTR dst, LPCWSTR src )
 
 
 /***********************************************************************
- *           lstrcatn   (KERNEL.352)
- */
-SEGPTR WINAPI lstrcatn16( SEGPTR dst, LPCSTR src, INT16 n )
-{
-    LPSTR p = MapSL(dst);
-    LPSTR start = p;
-
-    while (*p) p++;
-    if ((n -= (p - start)) <= 0) return dst;
-    lstrcpynA( p, src, n );
-    return dst;
-}
-
-
-/***********************************************************************
- *           lstrcpy   (KERNEL.88)
- */
-SEGPTR WINAPI lstrcpy16( SEGPTR dst, LPCSTR src )
-{
-    if (!lstrcpyA( MapSL(dst), src )) dst = 0;
-    return dst;
-}
-
-
-/***********************************************************************
  *           lstrcpyA   (KERNEL32.@)
  *           lstrcpy    (KERNEL32.@)
  */
@@ -265,16 +220,6 @@ LPWSTR WINAPI lstrcpyW( LPWSTR dst, LPCWSTR src )
 
 
 /***********************************************************************
- *           lstrcpyn   (KERNEL.353)
- */
-SEGPTR WINAPI lstrcpyn16( SEGPTR dst, LPCSTR src, INT16 n )
-{
-    lstrcpynA( MapSL(dst), src, n );
-    return dst;
-}
-
-
-/***********************************************************************
  *           lstrcpynA   (KERNEL32.@)
  *           lstrcpyn    (KERNEL32.@)
  *
@@ -344,15 +289,6 @@ LPWSTR WINAPI lstrcpynW( LPWSTR dst, LPCWSTR src, INT n )
 
 
 /***********************************************************************
- *           lstrlen   (KERNEL.90)
- */
-INT16 WINAPI lstrlen16( LPCSTR str )
-{
-    return (INT16)lstrlenA( str );
-}
-
-
-/***********************************************************************
  *           lstrlenA   (KERNEL32.@)
  *           lstrlen    (KERNEL32.@)
  */
@@ -391,84 +327,3 @@ INT WINAPI lstrlenW( LPCWSTR str )
     __ENDTRY
     return ret;
 }
-
-
-/***********************************************************************
- *           UnicodeToAnsi   (KERNEL.434)
- */
-INT16 WINAPI UnicodeToAnsi16( LPCWSTR src, LPSTR dst, INT16 codepage )
-{
-    if ( codepage == -1 ) codepage = CP_ACP;
-    return WideCharToMultiByte( codepage, 0, src, -1, dst, 0x7fffffff, NULL, NULL );
-}
-
-
-/***************************************************************************
- *
- * Win 2.x string functions now moved to USER
- *
- * We rather want to implement them here instead of doing Callouts
- */
-
-/***********************************************************************
- *		Reserved1 (KERNEL.77)
- */
-SEGPTR WINAPI KERNEL_AnsiNext16(SEGPTR current)
-{
-    return (*(char *)MapSL(current)) ? current + 1 : current;
-}
-
-/***********************************************************************
- *		Reserved2(KERNEL.78)
- */
-SEGPTR WINAPI KERNEL_AnsiPrev16( SEGPTR start, SEGPTR current )
-{
-    return (current==start)?start:current-1;
-}
-
-/***********************************************************************
- *		Reserved3 (KERNEL.79)
- */
-SEGPTR WINAPI KERNEL_AnsiUpper16( SEGPTR strOrChar )
-{
-    /* uppercase only one char if strOrChar < 0x10000 */
-    if (HIWORD(strOrChar))
-    {
-        char *s = MapSL(strOrChar);
-        while (*s)
-        {
-            *s = toupper(*s);
-            s++;
-        }
-        return strOrChar;
-    }
-    else return toupper((char)strOrChar);
-}
-
-/***********************************************************************
- *		Reserved4 (KERNEL.80)
- */
-SEGPTR WINAPI KERNEL_AnsiLower16( SEGPTR strOrChar )
-{
-    /* lowercase only one char if strOrChar < 0x10000 */
-    if (HIWORD(strOrChar))
-    {
-        char *s = MapSL(strOrChar);
-        while (*s)
-        {
-            *s = tolower(*s);
-            s++;
-        }
-        return strOrChar;
-    }
-    else return tolower((char)strOrChar);
-}
-
-
-/***********************************************************************
- *		Reserved5 (KERNEL.87)
- */
-INT16 WINAPI KERNEL_lstrcmp16( LPCSTR str1, LPCSTR str2 )
-{
-    return (INT16)strcmp( str1, str2 );
-}




More information about the wine-cvs mailing list