Pārlūkot izejas kodu

2009-07-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

	Handle the case when DownloadContext has no FileEntry.
	* src/XmlRpcMethodImpl.cc
Tatsuhiro Tsujikawa 16 gadi atpakaļ
vecāks
revīzija
08fb20d076
2 mainītis faili ar 14 papildinājumiem un 8 dzēšanām
  1. 5 0
      ChangeLog
  2. 9 8
      src/XmlRpcMethodImpl.cc

+ 5 - 0
ChangeLog

@@ -1,3 +1,8 @@
+2009-07-15  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
+
+	Handle the case when DownloadContext has no FileEntry.
+	* src/XmlRpcMethodImpl.cc
+
 2009-07-14  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 
 	Handle the situation where struct option.name is char *.

+ 9 - 8
src/XmlRpcMethodImpl.cc

@@ -429,14 +429,15 @@ BDE GetUrisXmlRpcMethod::process
   }
   BDE uriList = BDE::list();
   std::deque<std::string> uris;
-  // TODO1.5 getUris should return list of URIs attached to each FileEntry.
-  // Current implementation just returns first FileEntry's URIs.
-  group->getDownloadContext()->getFirstFileEntry()->getUris(uris);
-  for(std::deque<std::string>::const_iterator i = uris.begin(); i != uris.end();
-      ++i) {
-    BDE entry = BDE::dict();
-    entry["uri"] = *i;
-    uriList << entry;
+  // TODO Current implementation just returns first FileEntry's URIs.
+  if(!group->getDownloadContext()->getFileEntries().empty()) {
+    group->getDownloadContext()->getFirstFileEntry()->getUris(uris);
+    for(std::deque<std::string>::const_iterator i = uris.begin();
+	i != uris.end(); ++i) {
+      BDE entry = BDE::dict();
+      entry["uri"] = *i;
+      uriList << entry;
+    }
   }
   return uriList;
 }