Author: [EMAIL PROTECTED]
Date: Thu Sep 11 08:03:22 2008
New Revision: 285
Modified:
branches/bleeding_edge/src/platform-macos.cc
branches/bleeding_edge/src/platform-win32.cc
branches/bleeding_edge/src/utils.h
Log:
Fixed build problem on mac, lint issues and a test failure on win32.
Review URL: http://codereview.chromium.org/2601
Modified: branches/bleeding_edge/src/platform-macos.cc
==============================================================================
--- branches/bleeding_edge/src/platform-macos.cc (original)
+++ branches/bleeding_edge/src/platform-macos.cc Thu Sep 11 08:03:22 2008
@@ -132,6 +132,11 @@
}
+FILE* OS::FOpen(const char* path, const char* mode) {
+ return fopen(path, mode);
+}
+
+
void OS::Print(const char* format, ...) {
va_list args;
va_start(args, format);
@@ -158,19 +163,21 @@
}
-int OS::SNPrintF(char* str, size_t size, const char* format, ...) {
+int OS::SNPrintF(Vector<char> str, const char* format, ...) {
va_list args;
va_start(args, format);
- int result = VSNPrintF(str, size, format, args);
+ int result = VSNPrintF(str, format, args);
va_end(args);
return result;
}
-int OS::VSNPrintF(char* str, size_t size, const char* format, va_list
args) {
- int n = vsnprintf(str, size, format, args); // forward to Mac OS X.
- if (n < 0 || static_cast<size_t>(n) >= size) {
- str[size - 1] = '\0';
+int OS::VSNPrintF(Vector<char> str,
+ const char* format,
+ va_list args) {
+ int n = vsnprintf(str.start(), str.length(), format, args);
+ if (n < 0 || n >= str.length()) {
+ str[str.length() - 1] = '\0';
return -1;
} else {
return n;
@@ -178,6 +185,21 @@
}
+void OS::StrNCpy(Vector<char> dest, const char* src, size_t n) {
+ strncpy(dest.start(), src, n);
+}
+
+
+void OS::WcsCpy(Vector<wchar_t> dest, const wchar_t* src) {
+ wcscpy(dest.start(), src);
+}
+
+
+char *OS::StrDup(const char* str) {
+ return strdup(str);
+}
+
+
// We keep the lowest and highest addresses mapped as a quick way of
// determining that pointers are outside the heap (used mostly in
assertions
// and verification). The estimate is conservative, ie, not all addresses
in
@@ -299,7 +321,10 @@
frames[i].address = addresses[i];
// Format a text representation of the frame based on the information
// available.
- SNPrintF(frames[i].text, kStackWalkMaxTextLen, "%s", symbols[i]);
+ SNPrintF(MutableCStrVector(frames[i].text,
+ kStackWalkMaxTextLen),
+ "%s",
+ symbols[i]);
// Make sure line termination is in place.
frames[i].text[kStackWalkMaxTextLen - 1] = '\0';
}
Modified: branches/bleeding_edge/src/platform-win32.cc
==============================================================================
--- branches/bleeding_edge/src/platform-win32.cc (original)
+++ branches/bleeding_edge/src/platform-win32.cc Thu Sep 11 08:03:22 2008
@@ -668,7 +668,7 @@
int OS::VSNPrintF(Vector<char> str, const char* format, va_list args) {
- int n = _vsnprintf_s(str.start(), str.length(), str.length(), format,
args);
+ int n = _vsnprintf_s(str.start(), str.length(), _TRUNCATE, format, args);
// Make sure to zero-terminate the string if the output was
// truncated or if there was an error.
if (n < 0 || n >= str.length()) {
@@ -682,13 +682,15 @@
void OS::StrNCpy(Vector<char> dest, const char* src, size_t n) {
int result = strncpy_s(dest.start(), dest.length(), src, n);
- USE(result); ASSERT(result == 0);
+ USE(result);
+ ASSERT(result == 0);
}
void OS::WcsCpy(Vector<wchar_t> dest, const wchar_t* src) {
int result = wcscpy_s(dest.start(), dest.length(), src);
- USE(result); ASSERT(result == 0);
+ USE(result);
+ ASSERT(result == 0);
}
Modified: branches/bleeding_edge/src/utils.h
==============================================================================
--- branches/bleeding_edge/src/utils.h (original)
+++ branches/bleeding_edge/src/utils.h Thu Sep 11 08:03:22 2008
@@ -328,12 +328,12 @@
};
-template <typename T, int size>
+template <typename T, int kSize>
class EmbeddedVector : public Vector<T> {
public:
- EmbeddedVector() : Vector<T>(buffer_, size) { }
+ EmbeddedVector() : Vector<T>(buffer_, kSize) { }
private:
- T buffer_[size];
+ T buffer_[kSize];
};
--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---