diff options
author | mmentovai <mmentovai@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2006-10-26 18:06:43 +0000 |
---|---|---|
committer | mmentovai <mmentovai@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2006-10-26 18:06:43 +0000 |
commit | 29401d2457120b6d581affdb440017433ca93e77 (patch) | |
tree | b220a87d6f942f164b1cba84ba369ad060d80891 /src/common | |
parent | Add MDString to minidump_format.h (#59). r=bryner (diff) | |
download | breakpad-29401d2457120b6d581affdb440017433ca93e77.tar.xz |
Support building with WIN32_LEAN_AND_MEAN (#60)
- All Windows code now builds with WIN32_LEAN_AND_MEAN by default.
- Header inclusion is adjusted as needed.
Remove use of UuidToString (#39)
- Also breaks dependency on RpcStringFree and therefore rpcrt4.lib.
r=bryner
http://groups.google.com/group/airbag-dev/browse_thread/thread/30f844cfc7ccd37f
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@51 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/common')
-rw-r--r-- | src/common/windows/guid_string.cc | 52 | ||||
-rw-r--r-- | src/common/windows/guid_string.h | 52 | ||||
-rw-r--r-- | src/common/windows/http_upload.cc | 4 | ||||
-rw-r--r-- | src/common/windows/http_upload.h | 3 | ||||
-rw-r--r-- | src/common/windows/pdb_source_line_writer.cc | 15 | ||||
-rw-r--r-- | src/common/windows/pdb_source_line_writer.h | 1 |
6 files changed, 114 insertions, 13 deletions
diff --git a/src/common/windows/guid_string.cc b/src/common/windows/guid_string.cc new file mode 100644 index 00000000..86d5f736 --- /dev/null +++ b/src/common/windows/guid_string.cc @@ -0,0 +1,52 @@ +// Copyright (c) 2006, Google Inc. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// guid_string.cc: Convert GUIDs to strings. +// +// See guid_string.h for documentation. + +#include <wchar.h> + +#include "common/windows/guid_string.h" + +namespace google_airbag { + +// static +wstring GUIDString::GUIDToWString(GUID *guid) { + wchar_t guid_string[37]; + _snwprintf_s(guid_string, sizeof(guid_string) / sizeof(wchar_t), _TRUNCATE, + L"%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x", + guid->Data1, guid->Data2, guid->Data3, + guid->Data4[0], guid->Data4[1], guid->Data4[2], + guid->Data4[3], guid->Data4[4], guid->Data4[5], + guid->Data4[6], guid->Data4[7]); + return wstring(guid_string); +} + +} // namespace google_airbag diff --git a/src/common/windows/guid_string.h b/src/common/windows/guid_string.h new file mode 100644 index 00000000..df067499 --- /dev/null +++ b/src/common/windows/guid_string.h @@ -0,0 +1,52 @@ +// Copyright (c) 2006, Google Inc. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// guid_string.cc: Convert GUIDs to strings. + +#ifndef COMMON_WINDOWS_GUID_STRING_H__ +#define COMMON_WINDOWS_GUID_STRING_H__ + +#include <Guiddef.h> + +#include <string> + +namespace google_airbag { + +using std::wstring; + +class GUIDString { + public: + // Converts guid to a string in the format recommended by RFC 4122 and + // returns the string. + static wstring GUIDToWString(GUID *guid); +}; + +} // namespace google_airbag + +#endif // COMMON_WINDOWS_GUID_STRING_H__ diff --git a/src/common/windows/http_upload.cc b/src/common/windows/http_upload.cc index 587ac36f..75f8bec5 100644 --- a/src/common/windows/http_upload.cc +++ b/src/common/windows/http_upload.cc @@ -28,8 +28,8 @@ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include <assert.h> -#include <windows.h> -#include <wininet.h> +#include <Windows.h> +#include <WinInet.h> #include <fstream> diff --git a/src/common/windows/http_upload.h b/src/common/windows/http_upload.h index d09db11d..612e552f 100644 --- a/src/common/windows/http_upload.h +++ b/src/common/windows/http_upload.h @@ -34,9 +34,10 @@ #ifndef COMMON_WINDOWS_HTTP_UPLOAD_H__ #define COMMON_WINDOWS_HTTP_UPLOAD_H__ -#include <string> #include <map> +#include <string> #include <vector> + namespace google_airbag { using std::string; diff --git a/src/common/windows/pdb_source_line_writer.cc b/src/common/windows/pdb_source_line_writer.cc index 91c95922..5f69775a 100644 --- a/src/common/windows/pdb_source_line_writer.cc +++ b/src/common/windows/pdb_source_line_writer.cc @@ -27,11 +27,13 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#include <stdio.h> #include <atlbase.h> -#include <dia2.h> #include <DbgHelp.h> +#include <dia2.h> +#include <stdio.h> + #include "common/windows/pdb_source_line_writer.h" +#include "common/windows/guid_string.h" // This constant may be missing from DbgHelp.h. See the documentation for // IDiaSymbol::get_undecoratedNameEx. @@ -631,14 +633,7 @@ wstring PDBSourceLineWriter::GetModuleGUID() { return L""; } - wchar_t guid_buf[37]; - _snwprintf_s(guid_buf, sizeof(guid_buf)/sizeof(wchar_t), _TRUNCATE, - L"%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x\n", - guid.Data1, guid.Data2, guid.Data3, - guid.Data4[0], guid.Data4[1], guid.Data4[2], - guid.Data4[3], guid.Data4[4], guid.Data4[5], - guid.Data4[6], guid.Data4[7]); - return guid_buf; + return GUIDString::GUIDToWString(&guid); } } // namespace google_airbag diff --git a/src/common/windows/pdb_source_line_writer.h b/src/common/windows/pdb_source_line_writer.h index 4c2c0860..506a4cb7 100644 --- a/src/common/windows/pdb_source_line_writer.h +++ b/src/common/windows/pdb_source_line_writer.h @@ -34,6 +34,7 @@ #define _PDB_SOURCE_LINE_WRITER_H__ #include <atlcomcli.h> + #include <string> struct IDiaEnumLineNumbers; |