Author: [email protected]
Date: Fri Feb 20 03:31:44 2009
New Revision: 1326
Modified:
branches/bleeding_edge/src/d8.cc
branches/bleeding_edge/src/platform-freebsd.cc
branches/bleeding_edge/src/platform-linux.cc
branches/bleeding_edge/src/platform-macos.cc
branches/bleeding_edge/src/platform-win32.cc
branches/bleeding_edge/src/platform.h
Log:
Introduced a platform independent version of strchr, as the return value is
const on Windows.
This fixes building of D8 on Windows.
Mac OS and FreeBSD changes have not been tested.
Review URL: http://codereview.chromium.org/20534
Modified: branches/bleeding_edge/src/d8.cc
==============================================================================
--- branches/bleeding_edge/src/d8.cc (original)
+++ branches/bleeding_edge/src/d8.cc Fri Feb 20 03:31:44 2009
@@ -419,8 +419,8 @@
}
-static char* ReadToken(const char* data, char token) {
- char* next = ::strchr(data, token);
+static char* ReadToken(char* data, char token) {
+ char* next = i::OS::StrChr(data, token);
if (next != NULL) {
*next = '\0';
return (next + 1);
@@ -430,12 +430,12 @@
}
-static char* ReadLine(const char* data) {
+static char* ReadLine(char* data) {
return ReadToken(data, '\n');
}
-static char* ReadWord(const char* data) {
+static char* ReadWord(char* data) {
return ReadToken(data, ' ');
}
Modified: branches/bleeding_edge/src/platform-freebsd.cc
==============================================================================
--- branches/bleeding_edge/src/platform-freebsd.cc (original)
+++ branches/bleeding_edge/src/platform-freebsd.cc Fri Feb 20 03:31:44 2009
@@ -184,6 +184,11 @@
}
+char* OS::StrChr(char* str, int c) {
+ return strchr(str, c);
+}
+
+
void OS::StrNCpy(Vector<char> dest, const char* src, size_t n) {
strncpy(dest.start(), src, n);
}
Modified: branches/bleeding_edge/src/platform-linux.cc
==============================================================================
--- branches/bleeding_edge/src/platform-linux.cc (original)
+++ branches/bleeding_edge/src/platform-linux.cc Fri Feb 20 03:31:44 2009
@@ -180,6 +180,11 @@
}
+char* OS::StrChr(char* str, int c) {
+ return strchr(str, c);
+}
+
+
void OS::StrNCpy(Vector<char> dest, const char* src, size_t n) {
strncpy(dest.start(), src, n);
}
Modified: branches/bleeding_edge/src/platform-macos.cc
==============================================================================
--- branches/bleeding_edge/src/platform-macos.cc (original)
+++ branches/bleeding_edge/src/platform-macos.cc Fri Feb 20 03:31:44 2009
@@ -185,6 +185,11 @@
}
+char* OS::StrChr(char* str, int c) {
+ return strchr(str, c);
+}
+
+
void OS::StrNCpy(Vector<char> dest, const char* src, size_t n) {
strncpy(dest.start(), src, n);
}
Modified: branches/bleeding_edge/src/platform-win32.cc
==============================================================================
--- branches/bleeding_edge/src/platform-win32.cc (original)
+++ branches/bleeding_edge/src/platform-win32.cc Fri Feb 20 03:31:44 2009
@@ -732,6 +732,11 @@
}
+char* OS::StrChr(char* str, int c) {
+ return const_cast<char*>(strchr(str, c));
+}
+
+
void OS::StrNCpy(Vector<char> dest, const char* src, size_t n) {
int result = strncpy_s(dest.start(), dest.length(), src, n);
USE(result);
Modified: branches/bleeding_edge/src/platform.h
==============================================================================
--- branches/bleeding_edge/src/platform.h (original)
+++ branches/bleeding_edge/src/platform.h Fri Feb 20 03:31:44 2009
@@ -219,6 +219,7 @@
const char* format,
va_list args);
+ static char* StrChr(char* str, int c);
static void StrNCpy(Vector<char> dest, const char* src, size_t n);
static char* StrDup(const char* str);
static char* StrNDup(const char* str, size_t n);
--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---