| Summary: | kftpgrabber doesn't handle ampersands correctly | ||
|---|---|---|---|
| Product: | [Unmaintained] kftpgrabber | Reporter: | Stavros M. Polymenakos <smpolymen> |
| Component: | general | Assignee: | Jernej Kos <kostko> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Gentoo Packages | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Stavros M. Polymenakos
2007-01-22 03:33:31 UTC
oops 0.8.0 but as far as I remember this has always been, just haven't reported it until now. SVN commit 650882 by kostko:
Fixed URL encoding (= removed some ugly hacks).
BUG: 140419
M +2 -26 kftpqueueconverter.cpp
--- trunk/extragear/network/kftpgrabber/src/kftpqueueconverter.cpp #650881:650882
@@ -101,37 +101,13 @@
void KFTPQueueConverter::generateXML(KFTPQueue::Transfer *transfer, QDomNode parent)
{
- /*
- <item>
- <source>ftp://user:pass@ftp.server.org/path/to/file.gz</source>
- <dest>file:/home/kostko/file.gz</dest>
- <size>1234567890</size>
- <type>file</type>
- </item>
- */
-
// Create the item
QDomElement item = m_xml.createElement("item");
parent.appendChild(item);
- // XXX Dirty hack to properly convert chinese filenames
- QString sourceUrl;
- sourceUrl = transfer->getSourceUrl().htmlURL();
- if (transfer->getSourceUrl().pass() != QString::null) {
- sourceUrl = sourceUrl.insert(sourceUrl.find('@'), ":" + transfer->getSourceUrl().pass());
- }
-
- createTextNode("source", sourceUrl, item);
-
- QString destUrl;
- destUrl = transfer->getDestUrl().htmlURL();
- if (transfer->getDestUrl().pass() != QString::null) {
- destUrl = destUrl.insert(destUrl.find('@'), ":" + transfer->getDestUrl().pass());
- }
-
- createTextNode("dest", destUrl, item);
-
// Create text nodes
+ createTextNode("source", transfer->getSourceUrl().url(), item);
+ createTextNode("dest", transfer->getDestUrl().url(), item);
createTextNode("size", QString::number(transfer->getSize()), item);
createTextNode("type", transfer->isDir() ? "directory" : "file", item);
|