Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8267)

Unified Diff: chrome/browser/system_monitor/portable_device_watcher_win.cc

Issue 11297002: [Media Gallery] Added code to support mtp device media file system on Windows. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/system_monitor/portable_device_watcher_win.cc
diff --git a/chrome/browser/system_monitor/portable_device_watcher_win.cc b/chrome/browser/system_monitor/portable_device_watcher_win.cc
index 70a9f7f229b2a6ec24e2718c6f3bf46c33d2a06d..991202b4979e02e49a15f289174da8f392fc3f60 100644
--- a/chrome/browser/system_monitor/portable_device_watcher_win.cc
+++ b/chrome/browser/system_monitor/portable_device_watcher_win.cc
@@ -509,6 +509,32 @@ void PortableDeviceWatcherWin::OnWindowMessage(UINT event_type, LPARAM data) {
HandleDeviceDetachEvent(device_id);
}
+bool PortableDeviceWatcherWin::GetMTPStorageInfoFromDeviceId(
+ const std::string& storage_device_id,
+ string16* device_location,
+ string16* storage_object_id) {
+ DCHECK(device_location);
+ DCHECK(storage_object_id);
+ MTPStorageMap::const_iterator storage_map_iter =
+ storage_map_.find(storage_device_id);
+ if (storage_map_iter == storage_map_.end())
+ return false;
+
+ *device_location = storage_map_iter->second.location;
+ MTPDeviceMap::const_iterator device_iter = device_map_.find(*device_location);
+ DCHECK(device_iter != device_map_.end());
+ const StorageObjects& storage_objects = device_iter->second;
+ for (StorageObjects::const_iterator storage_object_iter =
+ storage_objects.begin(); storage_object_iter != storage_objects.end();
+ ++storage_object_iter) {
+ if (storage_device_id == storage_object_iter->object_persistent_id) {
+ *storage_object_id = storage_object_iter->object_temporary_id;
+ break;
+ }
+ }
+ return !storage_object_id->empty();
+}
+
void PortableDeviceWatcherWin::EnumerateAttachedDevices() {
DCHECK(media_task_runner_.get());
DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));

Powered by Google App Engine
This is Rietveld 408576698