Description: Fix f-spot crashes when exporting to Zooomr
Debian-BTS: #514460
Origin: vendor, Debian
Forwarded: no
Author: Chris Coulson <chrisccoulson@googlemail.com>
Last-Update: Thu, 13 Aug 2009 20:52:59 -0400
Index: libflickrnet2-48055~2.2.0/FlickrNet/Flickr.cs
===================================================================
--- libflickrnet2-48055~2.2.0.orig/FlickrNet/Flickr.cs	2009-03-10 04:03:54.000000000 -0400
+++ libflickrnet2-48055~2.2.0/FlickrNet/Flickr.cs	2009-08-13 20:51:51.000000000 -0400
@@ -54,7 +54,7 @@
 
 		private string[] _baseUrl = new string[] { 
 													 "http://api.flickr.com/services/rest/", 
-													 "http://beta.zooomr.com/bluenote/api/rest",
+													 "http://www.zooomr.com/api/rest",
 													 "http://www.23hq.com/services/rest/"};
 
 		private string UploadUrl
@@ -63,7 +63,7 @@
 		}
 		private static string[] _uploadUrl = new string[] {
 															  "http://api.flickr.com/services/upload/",
-															  "http://beta.zooomr.com/bluenote/api/upload",
+															  "http://www.zooomr.com/api/upload",
 															  "http://www.23hq.com/services/upload/"};
 
 		private string ReplaceUrl
@@ -72,7 +72,7 @@
 		}
 		private static string[] _replaceUrl = new string[] {
 															   "http://api.flickr.com/services/replace/",
-															   "http://beta.zooomr.com/bluenote/api/replace",
+															   "http://www.zooomr.com/api/replace",
 															   "http://www.23hq.com/services/replace/"};
 
 		private string AuthUrl
@@ -81,7 +81,7 @@
 		}
 		private static string[] _authUrl = new string[] {
 															"http://www.flickr.com/services/auth/",
-															"http://beta.zooomr.com/auth/",
+															"http://www.zooomr.com/services/auth/",
 															"http://www.23hq.com/services/auth/"};
 
 		private string _apiKey;
@@ -443,7 +443,8 @@
 			{
 				// This is needed in the Compact Framework
 				// See for more details: http://msdn2.microsoft.com/en-us/library/1afx2b0f.aspx
-				req.GetRequestStream().Close();
+				if (req.Method=="POST")
+				    req.GetRequestStream().Close();
 			}
 
 			try
@@ -754,7 +755,7 @@
 			FlickrNet.Response response = GetResponseNoCache(parameters);
 			if( response.Status == ResponseStatus.OK )
 			{
-				return response.AllElements[0].InnerText;
+				return response.AllElements[CurrentService==SupportedService.Zooomr?1:0].InnerText;
 			}
 			else
 			{
@@ -825,7 +826,7 @@
 			FlickrNet.Response response = GetResponseNoCache(parameters);
 			if( response.Status == ResponseStatus.OK )
 			{
-				Auth auth = new Auth(response.AllElements[0]);
+				Auth auth = new Auth(response.AllElements[CurrentService==SupportedService.Zooomr?1:0]);
 				return auth;
 			}
 			else
@@ -875,7 +876,7 @@
 			FlickrNet.Response response = GetResponseNoCache(parameters);
 			if( response.Status == ResponseStatus.OK )
 			{
-				Auth auth = new Auth(response.AllElements[0]);
+				Auth auth = new Auth(response.AllElements[CurrentService==SupportedService.Zooomr?1:0]);
 				return auth;
 			}
 			else
