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;