summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authoravi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-23 18:35:42 +0000
committeravi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-23 18:35:42 +0000
commit4f260d0c40e2b63d2af72d667ca5b0518c2dff84 (patch)
tree2c976dd8b8dc5c217646627205e61728e8891b03 /base
parentb3ae5db129f88dae153880e84bdabea8ce2ca89b (diff)
downloadchromium_src-4f260d0c40e2b63d2af72d667ca5b0518c2dff84.zip
chromium_src-4f260d0c40e2b63d2af72d667ca5b0518c2dff84.tar.gz
chromium_src-4f260d0c40e2b63d2af72d667ca5b0518c2dff84.tar.bz2
Update file version info/memory details/process utils to use string16.
BUG=23581 TEST=everything still works Review URL: http://codereview.chromium.org/5968008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70071 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r--base/file_version_info.h52
-rw-r--r--base/file_version_info_mac.h38
-rw-r--r--base/file_version_info_mac.mm64
-rw-r--r--base/file_version_info_win.cc37
-rw-r--r--base/file_version_info_win.h34
-rw-r--r--base/process_util.cc12
-rw-r--r--base/process_util.h14
-rw-r--r--base/process_util_linux.cc3
-rw-r--r--base/process_util_mac.mm2
-rw-r--r--base/process_util_posix.cc4
10 files changed, 123 insertions, 137 deletions
diff --git a/base/file_version_info.h b/base/file_version_info.h
index 41a97fa..481e88d 100644
--- a/base/file_version_info.h
+++ b/base/file_version_info.h
@@ -6,15 +6,23 @@
#define BASE_FILE_VERSION_INFO_H__
#pragma once
+#include "build/build_config.h"
+
#include <string>
-#include "build/build_config.h"
+#include "base/string16.h"
class FilePath;
-// Provides an interface for accessing the version information for a file.
-// This is the information you access when you select a file in the Windows
-// explorer, right-click select Properties, then click the Version tab.
+// Provides an interface for accessing the version information for a file. This
+// is the information you access when you select a file in the Windows Explorer,
+// right-click select Properties, then click the Version tab, and on the Mac
+// when you select a file in the Finder and do a Get Info.
+//
+// This list of properties is straight out of Win32's VerQueryValue
+// <http://msdn.microsoft.com/en-us/library/ms647464.aspx> and the Mac
+// version returns values from the Info.plist as appropriate. TODO(avi): make
+// this a less-obvious Windows-ism.
class FileVersionInfo {
public:
@@ -26,33 +34,27 @@ class FileVersionInfo {
static FileVersionInfo* CreateFileVersionInfo(const FilePath& file_path);
#endif // OS_WIN || OS_MACOSX
-#if defined(OS_WIN)
- // This version, taking a wstring, is deprecated and only kept around
- // until we can fix all callers.
- static FileVersionInfo* CreateFileVersionInfo(const std::wstring& file_path);
-#endif // OS_WIN
-
// Creates a FileVersionInfo for the current module. Returns NULL in case
// of error. The returned object should be deleted when you are done with it.
static FileVersionInfo* CreateFileVersionInfoForCurrentModule();
// Accessors to the different version properties.
// Returns an empty string if the property is not found.
- virtual std::wstring company_name() = 0;
- virtual std::wstring company_short_name() = 0;
- virtual std::wstring product_name() = 0;
- virtual std::wstring product_short_name() = 0;
- virtual std::wstring internal_name() = 0;
- virtual std::wstring product_version() = 0;
- virtual std::wstring private_build() = 0;
- virtual std::wstring special_build() = 0;
- virtual std::wstring comments() = 0;
- virtual std::wstring original_filename() = 0;
- virtual std::wstring file_description() = 0;
- virtual std::wstring file_version() = 0;
- virtual std::wstring legal_copyright() = 0;
- virtual std::wstring legal_trademarks() = 0;
- virtual std::wstring last_change() = 0;
+ virtual string16 company_name() = 0;
+ virtual string16 company_short_name() = 0;
+ virtual string16 product_name() = 0;
+ virtual string16 product_short_name() = 0;
+ virtual string16 internal_name() = 0;
+ virtual string16 product_version() = 0;
+ virtual string16 private_build() = 0;
+ virtual string16 special_build() = 0;
+ virtual string16 comments() = 0;
+ virtual string16 original_filename() = 0;
+ virtual string16 file_description() = 0;
+ virtual string16 file_version() = 0;
+ virtual string16 legal_copyright() = 0;
+ virtual string16 legal_trademarks() = 0;
+ virtual string16 last_change() = 0;
virtual bool is_official_build() = 0;
};
diff --git a/base/file_version_info_mac.h b/base/file_version_info_mac.h
index 36cb538..879edb3 100644
--- a/base/file_version_info_mac.h
+++ b/base/file_version_info_mac.h
@@ -17,39 +17,35 @@
class NSBundle;
#endif
-// Provides a way to access the version information for a file.
-// This is the information you access when you select a file in the Windows
-// explorer, right-click select Properties, then click the Version tab.
-
class FileVersionInfoMac : public FileVersionInfo {
public:
explicit FileVersionInfoMac(NSBundle *bundle);
// Accessors to the different version properties.
// Returns an empty string if the property is not found.
- virtual std::wstring company_name();
- virtual std::wstring company_short_name();
- virtual std::wstring product_name();
- virtual std::wstring product_short_name();
- virtual std::wstring internal_name();
- virtual std::wstring product_version();
- virtual std::wstring private_build();
- virtual std::wstring special_build();
- virtual std::wstring comments();
- virtual std::wstring original_filename();
- virtual std::wstring file_description();
- virtual std::wstring file_version();
- virtual std::wstring legal_copyright();
- virtual std::wstring legal_trademarks();
- virtual std::wstring last_change();
+ virtual string16 company_name();
+ virtual string16 company_short_name();
+ virtual string16 product_name();
+ virtual string16 product_short_name();
+ virtual string16 internal_name();
+ virtual string16 product_version();
+ virtual string16 private_build();
+ virtual string16 special_build();
+ virtual string16 comments();
+ virtual string16 original_filename();
+ virtual string16 file_description();
+ virtual string16 file_version();
+ virtual string16 legal_copyright();
+ virtual string16 legal_trademarks();
+ virtual string16 last_change();
virtual bool is_official_build();
private:
- // Returns a wstring value for a property name.
+ // Returns a string16 value for a property name.
// Returns the empty string if the property does not exist.
- std::wstring GetWStringValue(CFStringRef name);
+ string16 GetString16Value(CFStringRef name);
scoped_nsobject<NSBundle> bundle_;
diff --git a/base/file_version_info_mac.mm b/base/file_version_info_mac.mm
index 6c6dd22..fa97df8 100644
--- a/base/file_version_info_mac.mm
+++ b/base/file_version_info_mac.mm
@@ -27,64 +27,64 @@ FileVersionInfo* FileVersionInfo::CreateFileVersionInfo(
return new FileVersionInfoMac(bundle);
}
-std::wstring FileVersionInfoMac::company_name() {
- return std::wstring();
+string16 FileVersionInfoMac::company_name() {
+ return string16();
}
-std::wstring FileVersionInfoMac::company_short_name() {
- return std::wstring();
+string16 FileVersionInfoMac::company_short_name() {
+ return string16();
}
-std::wstring FileVersionInfoMac::internal_name() {
- return std::wstring();
+string16 FileVersionInfoMac::internal_name() {
+ return string16();
}
-std::wstring FileVersionInfoMac::product_name() {
- return GetWStringValue(kCFBundleNameKey);
+string16 FileVersionInfoMac::product_name() {
+ return GetString16Value(kCFBundleNameKey);
}
-std::wstring FileVersionInfoMac::product_short_name() {
- return GetWStringValue(kCFBundleNameKey);
+string16 FileVersionInfoMac::product_short_name() {
+ return GetString16Value(kCFBundleNameKey);
}
-std::wstring FileVersionInfoMac::comments() {
- return std::wstring();
+string16 FileVersionInfoMac::comments() {
+ return string16();
}
-std::wstring FileVersionInfoMac::legal_copyright() {
- return GetWStringValue(CFSTR("CFBundleGetInfoString"));
+string16 FileVersionInfoMac::legal_copyright() {
+ return GetString16Value(CFSTR("CFBundleGetInfoString"));
}
-std::wstring FileVersionInfoMac::product_version() {
- return GetWStringValue(CFSTR("CFBundleShortVersionString"));
+string16 FileVersionInfoMac::product_version() {
+ return GetString16Value(CFSTR("CFBundleShortVersionString"));
}
-std::wstring FileVersionInfoMac::file_description() {
- return std::wstring();
+string16 FileVersionInfoMac::file_description() {
+ return string16();
}
-std::wstring FileVersionInfoMac::legal_trademarks() {
- return std::wstring();
+string16 FileVersionInfoMac::legal_trademarks() {
+ return string16();
}
-std::wstring FileVersionInfoMac::private_build() {
- return std::wstring();
+string16 FileVersionInfoMac::private_build() {
+ return string16();
}
-std::wstring FileVersionInfoMac::file_version() {
+string16 FileVersionInfoMac::file_version() {
return product_version();
}
-std::wstring FileVersionInfoMac::original_filename() {
- return GetWStringValue(kCFBundleNameKey);
+string16 FileVersionInfoMac::original_filename() {
+ return GetString16Value(kCFBundleNameKey);
}
-std::wstring FileVersionInfoMac::special_build() {
- return std::wstring();
+string16 FileVersionInfoMac::special_build() {
+ return string16();
}
-std::wstring FileVersionInfoMac::last_change() {
- return GetWStringValue(CFSTR("SVNRevision"));
+string16 FileVersionInfoMac::last_change() {
+ return GetString16Value(CFSTR("SVNRevision"));
}
bool FileVersionInfoMac::is_official_build() {
@@ -95,13 +95,13 @@ bool FileVersionInfoMac::is_official_build() {
#endif
}
-std::wstring FileVersionInfoMac::GetWStringValue(CFStringRef name) {
+string16 FileVersionInfoMac::GetString16Value(CFStringRef name) {
if (bundle_) {
NSString *ns_name = mac_util::CFToNSCast(name);
NSString* value = [bundle_ objectForInfoDictionaryKey:ns_name];
if (value) {
- return base::SysNSStringToWide(value);
+ return base::SysNSStringToUTF16(value);
}
}
- return std::wstring();
+ return string16();
}
diff --git a/base/file_version_info_win.cc b/base/file_version_info_win.cc
index 6c69708..e2bc84b 100644
--- a/base/file_version_info_win.cc
+++ b/base/file_version_info_win.cc
@@ -77,70 +77,63 @@ FileVersionInfo* FileVersionInfo::CreateFileVersionInfo(
}
}
-// static
-FileVersionInfo* FileVersionInfo::CreateFileVersionInfo(
- const std::wstring& file_path) {
- FilePath file_path_fp = FilePath::FromWStringHack(file_path);
- return CreateFileVersionInfo(file_path_fp);
-}
-
-std::wstring FileVersionInfoWin::company_name() {
+string16 FileVersionInfoWin::company_name() {
return GetStringValue(L"CompanyName");
}
-std::wstring FileVersionInfoWin::company_short_name() {
+string16 FileVersionInfoWin::company_short_name() {
return GetStringValue(L"CompanyShortName");
}
-std::wstring FileVersionInfoWin::internal_name() {
+string16 FileVersionInfoWin::internal_name() {
return GetStringValue(L"InternalName");
}
-std::wstring FileVersionInfoWin::product_name() {
+string16 FileVersionInfoWin::product_name() {
return GetStringValue(L"ProductName");
}
-std::wstring FileVersionInfoWin::product_short_name() {
+string16 FileVersionInfoWin::product_short_name() {
return GetStringValue(L"ProductShortName");
}
-std::wstring FileVersionInfoWin::comments() {
+string16 FileVersionInfoWin::comments() {
return GetStringValue(L"Comments");
}
-std::wstring FileVersionInfoWin::legal_copyright() {
+string16 FileVersionInfoWin::legal_copyright() {
return GetStringValue(L"LegalCopyright");
}
-std::wstring FileVersionInfoWin::product_version() {
+string16 FileVersionInfoWin::product_version() {
return GetStringValue(L"ProductVersion");
}
-std::wstring FileVersionInfoWin::file_description() {
+string16 FileVersionInfoWin::file_description() {
return GetStringValue(L"FileDescription");
}
-std::wstring FileVersionInfoWin::legal_trademarks() {
+string16 FileVersionInfoWin::legal_trademarks() {
return GetStringValue(L"LegalTrademarks");
}
-std::wstring FileVersionInfoWin::private_build() {
+string16 FileVersionInfoWin::private_build() {
return GetStringValue(L"PrivateBuild");
}
-std::wstring FileVersionInfoWin::file_version() {
+string16 FileVersionInfoWin::file_version() {
return GetStringValue(L"FileVersion");
}
-std::wstring FileVersionInfoWin::original_filename() {
+string16 FileVersionInfoWin::original_filename() {
return GetStringValue(L"OriginalFilename");
}
-std::wstring FileVersionInfoWin::special_build() {
+string16 FileVersionInfoWin::special_build() {
return GetStringValue(L"SpecialBuild");
}
-std::wstring FileVersionInfoWin::last_change() {
+string16 FileVersionInfoWin::last_change() {
return GetStringValue(L"LastChange");
}
diff --git a/base/file_version_info_win.h b/base/file_version_info_win.h
index 3d60d69..4a49314 100644
--- a/base/file_version_info_win.h
+++ b/base/file_version_info_win.h
@@ -15,10 +15,6 @@
struct tagVS_FIXEDFILEINFO;
typedef tagVS_FIXEDFILEINFO VS_FIXEDFILEINFO;
-// Provides a way to access the version information for a file.
-// This is the information you access when you select a file in the Windows
-// explorer, right-click select Properties, then click the Version tab.
-
class FileVersionInfoWin : public FileVersionInfo {
public:
FileVersionInfoWin(void* data, int language, int code_page);
@@ -26,21 +22,21 @@ class FileVersionInfoWin : public FileVersionInfo {
// Accessors to the different version properties.
// Returns an empty string if the property is not found.
- virtual std::wstring company_name();
- virtual std::wstring company_short_name();
- virtual std::wstring product_name();
- virtual std::wstring product_short_name();
- virtual std::wstring internal_name();
- virtual std::wstring product_version();
- virtual std::wstring private_build();
- virtual std::wstring special_build();
- virtual std::wstring comments();
- virtual std::wstring original_filename();
- virtual std::wstring file_description();
- virtual std::wstring file_version();
- virtual std::wstring legal_copyright();
- virtual std::wstring legal_trademarks();
- virtual std::wstring last_change();
+ virtual string16 company_name();
+ virtual string16 company_short_name();
+ virtual string16 product_name();
+ virtual string16 product_short_name();
+ virtual string16 internal_name();
+ virtual string16 product_version();
+ virtual string16 private_build();
+ virtual string16 special_build();
+ virtual string16 comments();
+ virtual string16 original_filename();
+ virtual string16 file_description();
+ virtual string16 file_version();
+ virtual string16 legal_copyright();
+ virtual string16 legal_trademarks();
+ virtual string16 last_change();
virtual bool is_official_build();
// Lets you access other properties not covered above.
diff --git a/base/process_util.cc b/base/process_util.cc
index 6293740..7b2935d 100644
--- a/base/process_util.cc
+++ b/base/process_util.cc
@@ -11,7 +11,7 @@ ProcessEntry::ProcessEntry() {}
ProcessEntry::~ProcessEntry() {}
#endif
-int GetProcessCount(const std::wstring& executable_name,
+int GetProcessCount(const FilePath::StringType& executable_name,
const ProcessFilter* filter) {
int count = 0;
NamedProcessIterator iter(executable_name, filter);
@@ -20,7 +20,7 @@ int GetProcessCount(const std::wstring& executable_name,
return count;
}
-bool KillProcesses(const std::wstring& executable_name, int exit_code,
+bool KillProcesses(const FilePath::StringType& executable_name, int exit_code,
const ProcessFilter* filter) {
bool result = true;
NamedProcessIterator iter(executable_name, filter);
@@ -56,10 +56,10 @@ ProcessIterator::ProcessEntries ProcessIterator::Snapshot() {
return found;
}
-NamedProcessIterator::NamedProcessIterator(const std::wstring& executable_name,
- const ProcessFilter* filter)
- : ProcessIterator(filter),
- executable_name_(executable_name) {
+NamedProcessIterator::NamedProcessIterator(
+ const FilePath::StringType& executable_name,
+ const ProcessFilter* filter) : ProcessIterator(filter),
+ executable_name_(executable_name) {
}
NamedProcessIterator::~NamedProcessIterator() {
diff --git a/base/process_util.h b/base/process_util.h
index ccbb687..ce4b0bb 100644
--- a/base/process_util.h
+++ b/base/process_util.h
@@ -34,10 +34,10 @@ typedef struct _malloc_zone_t malloc_zone_t;
#include <vector>
#include "base/file_descriptor_shuffle.h"
+#include "base/file_path.h"
#include "base/process.h"
class CommandLine;
-class FilePath;
namespace base {
@@ -322,7 +322,7 @@ class ProcessFilter {
// Returns the number of processes on the machine that are running from the
// given executable name. If filter is non-null, then only processes selected
// by the filter will be counted.
-int GetProcessCount(const std::wstring& executable_name,
+int GetProcessCount(const FilePath::StringType& executable_name,
const ProcessFilter* filter);
// Attempts to kill all the processes on the current machine that were launched
@@ -330,7 +330,7 @@ int GetProcessCount(const std::wstring& executable_name,
// filter is non-null, then only processes selected by the filter are killed.
// Returns true if all processes were able to be killed off, false if at least
// one couldn't be killed.
-bool KillProcesses(const std::wstring& executable_name, int exit_code,
+bool KillProcesses(const FilePath::StringType& executable_name, int exit_code,
const ProcessFilter* filter);
// Attempts to kill the process identified by the given process
@@ -377,7 +377,7 @@ bool WaitForExitCodeWithTimeout(ProcessHandle handle, int* exit_code,
// is non-null, then only processes selected by the filter are waited on.
// Returns after all processes have exited or wait_milliseconds have expired.
// Returns true if all the processes exited, false otherwise.
-bool WaitForProcessesToExit(const std::wstring& executable_name,
+bool WaitForProcessesToExit(const FilePath::StringType& executable_name,
int64 wait_milliseconds,
const ProcessFilter* filter);
@@ -396,7 +396,7 @@ bool CrashAwareSleep(ProcessHandle handle, int64 wait_milliseconds);
// on. Killed processes are ended with the given exit code. Returns false if
// any processes needed to be killed, true if they all exited cleanly within
// the wait_milliseconds delay.
-bool CleanupProcesses(const std::wstring& executable_name,
+bool CleanupProcesses(const FilePath::StringType& executable_name,
int64 wait_milliseconds,
int exit_code,
const ProcessFilter* filter);
@@ -457,7 +457,7 @@ class ProcessIterator {
// until it returns false.
class NamedProcessIterator : public ProcessIterator {
public:
- NamedProcessIterator(const std::wstring& executable_name,
+ NamedProcessIterator(const FilePath::StringType& executable_name,
const ProcessFilter* filter);
virtual ~NamedProcessIterator();
@@ -465,7 +465,7 @@ class NamedProcessIterator : public ProcessIterator {
virtual bool IncludeEntry();
private:
- std::wstring executable_name_;
+ FilePath::StringType executable_name_;
DISALLOW_COPY_AND_ASSIGN(NamedProcessIterator);
};
diff --git a/base/process_util_linux.cc b/base/process_util_linux.cc
index ff5e9316..670de6a 100644
--- a/base/process_util_linux.cc
+++ b/base/process_util_linux.cc
@@ -220,8 +220,7 @@ bool ProcessIterator::CheckForNextProcess() {
}
bool NamedProcessIterator::IncludeEntry() {
- // TODO(port): make this also work for non-ASCII filenames
- if (WideToASCII(executable_name_) != entry().exe_file())
+ if (executable_name_ != entry().exe_file())
return false;
return ProcessIterator::IncludeEntry();
}
diff --git a/base/process_util_mac.mm b/base/process_util_mac.mm
index d210670..aa0f14d 100644
--- a/base/process_util_mac.mm
+++ b/base/process_util_mac.mm
@@ -169,7 +169,7 @@ bool ProcessIterator::CheckForNextProcess() {
}
bool NamedProcessIterator::IncludeEntry() {
- return (SysWideToUTF8(executable_name_) == entry().exe_file() &&
+ return (executable_name_ == entry().exe_file() &&
ProcessIterator::IncludeEntry());
}
diff --git a/base/process_util_posix.cc b/base/process_util_posix.cc
index 3d29674..cd2eedd 100644
--- a/base/process_util_posix.cc
+++ b/base/process_util_posix.cc
@@ -877,7 +877,7 @@ bool GetAppOutputRestricted(const CommandLine& cl,
return GetAppOutputInternal(cl, &empty_environ, output, max_output, false);
}
-bool WaitForProcessesToExit(const std::wstring& executable_name,
+bool WaitForProcessesToExit(const FilePath::StringType& executable_name,
int64 wait_milliseconds,
const ProcessFilter* filter) {
bool result = false;
@@ -899,7 +899,7 @@ bool WaitForProcessesToExit(const std::wstring& executable_name,
return result;
}
-bool CleanupProcesses(const std::wstring& executable_name,
+bool CleanupProcesses(const FilePath::StringType& executable_name,
int64 wait_milliseconds,
int exit_code,
const ProcessFilter* filter) {