File 01-assume_http_as_default.patch of Package cutycapt

From: David Paleino <dapal@debian.org>
Subject: if no scheme is present, assume http
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=611900
Forwarded: no

---
 CutyCapt.cpp |   16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

--- cutycapt.orig/CutyCapt.cpp
+++ cutycapt/CutyCapt.cpp
@@ -362,7 +362,7 @@ main(int argc, char *argv[]) {
   int argMaxWait = 90000;
   int argVerbosity = 0;
   
-  const char* argUrl = NULL;
+  QByteArray argUrl = NULL;
   const char* argUserStyle = NULL;
   const char* argUserStylePath = NULL;
   const char* argUserStyleString = NULL;
@@ -370,6 +370,7 @@ main(int argc, char *argv[]) {
   const char* argInjectScript = NULL;
   const char* argScriptObject = NULL;
   QString argOut;
+  QUrl parsedUrl;
 
   CutyCapt::OutputFormat format = CutyCapt::OtherFormat;
 
@@ -421,7 +422,7 @@ main(int argc, char *argv[]) {
 
     // --name=value options
     if (strncmp("--url", s, nlen) == 0) {
-      argUrl = value;
+      argUrl = QByteArray(value);
 
     } else if (strncmp("--min-width", s, nlen) == 0) {
       // TODO: add error checking here?
@@ -571,14 +572,21 @@ main(int argc, char *argv[]) {
     }
   }
 
-  if (argUrl == NULL || argOut == NULL || argHelp) {
+  if (argUrl.isNull() || argOut == NULL || argHelp) {
       CaptHelp();
       return EXIT_FAILURE;
   }
 
+  // Check if a scheme is present, if not, assume http.
+  parsedUrl = QUrl::fromEncoded(argUrl);
+  if (parsedUrl.scheme() == "") {
+      argUrl = "http://" + argUrl;
+      parsedUrl = QUrl::fromEncoded(argUrl);
+  }
+
   // This used to use QUrl(argUrl) but that escapes %hh sequences
   // even though it should not, as URLs can assumed to be escaped.
-  req.setUrl( QUrl::fromEncoded(argUrl) );
+  req.setUrl(parsedUrl);
 
   QString scriptProp(argScriptObject);
   QString scriptCode;
openSUSE Build Service is sponsored by