From 5f0df5186540dd5a6f11063f6e420c86636b235d Mon Sep 17 00:00:00 2001 From: uema2 Date: Sat, 26 Apr 2003 05:25:30 +0000 Subject: * wince/ : files removed. (config, dll.mak, exe.mak, mswince-ruby17.def, io.c, process.c, signal.c, string.c, time.c) * wince/ : files added. (assert.c, Makefile.sub, mkexports.rb, io_wce.c, process_wce.c, signal_wce.c, string_wce.c, time_wce.c) * wince/configure.bat : like mswin32 style. * wince/direct.c : remove "static" at _currentdir. * wince/io.h : change definition. * wince/stdio.c : _fdopen -> fdopen. * wince/process.h : add_P_OVERLAY. * wince/time.h : change definition. * wince/wincemain.c : add wce_SetCurrentDir. * wince/wince.c : add wce_SetCurrentDir and wce_fopen. fix GetModuleFileNameA to return correct "lpFileName". * wince/wince.h : remove #ifdef. * wince/sys/utime.h, utime.c : rename _utime to utime. * wince/sys/stat.c : expand relative directory in stat. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- wince/string_wce.c | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 wince/string_wce.c (limited to 'wince/string_wce.c') diff --git a/wince/string_wce.c b/wince/string_wce.c new file mode 100644 index 0000000000..2a5514913d --- /dev/null +++ b/wince/string_wce.c @@ -0,0 +1,69 @@ +/*************************************************************** + string.c +***************************************************************/ + +#include +#include "wince.h" /* for wce_mbtowc */ + +/* _strdup already exists in stdlib.h? */ +char *strdup(const char * str) +{ + char *p; + + p = malloc( strlen(str)+1 ); + strcpy( p, str ); + return p; +} + +char* strerror(int errno) +{ + static char buf[32]="wince::strerror called."; + return buf; +} + +/* strnicmp already exists in stdlib.h? */ +int strnicmp( const char *s1, const char *s2, size_t count ) +{ + wchar_t *w1, *w2; + int n; + + w1 = wce_mbtowc(s1); + w2 = wce_mbtowc(s2); + + n = wcsnicmp(w1, w2, count); + + free(w1); + free(w2); + + return n; +} + +#if _WIN32_WCE < 300 +#include "..\missing\strtoul.c" + +char *strrchr( const char *p, int c ) +{ + char *pp; + for( pp=(char*)p+strlen(p); pp!=p; p-- ) + { + if( *pp==c ) break; + } + return pp==p ? NULL : pp; +} + +int stricmp( const char *s1, const char *s2 ) +{ + wchar_t *w1, *w2; + int n; + + w1 = wce_mbtowc(s1); + w2 = wce_mbtowc(s2); + + n = wcsicmp(w1, w2); + + free(w1); + free(w2); + + return n; +} +#endif -- cgit v1.2.3