Async*Getter: fix escaping in filenames
authorChristian Garbs <mitch@cgarbs.de>
Sun, 11 Mar 2012 16:44:17 +0000 (17:44 +0100)
committerRalf Ertzinger <ralf@skytale.net>
Fri, 1 Jun 2012 22:46:22 +0000 (00:46 +0200)
videosite/AsyncFileGetter.pm
videosite/AsyncWgetFileGetter.pm

index e9af7e4..fa44e56 100644 (file)
@@ -1,5 +1,5 @@
 # (c) 2007 by Ralf Ertzinger <ralf@camperquake.de>
-#     2008-2009,2011 by Christian Garbs <mitch@cgarbs.de>
+#     2008-2009,2011-2012 by Christian Garbs <mitch@cgarbs.de>
 #
 # licensed under GNU GPL v2
 #
@@ -44,6 +44,8 @@ sub get {
         $self->_encode($video->{'DLURL'}),
         $self->_encode($video)->{'URL'});
 
+    $dlfile =~ s/([\\"])/\\$1/g;
+
     $dirname = dirname($dlfile);
     if ($self->_diskfree($dirname) < $self->_getval('MINFREE')) {
         $self->error("Not enough free space to download");
index 43366a3..145d7ad 100644 (file)
@@ -1,6 +1,7 @@
 # (c) 2007 by Ralf Ertzinger <ralf@camperquake.de>
-#     2008-2009,2011 by Christian Garbs <mitch@cgarbs.de>
+#     2008-2009,2011-2012 by Christian Garbs <mitch@cgarbs.de>
 #     2010 by Maximilian Rehkopf <otakon@gmx.net>
+#
 # licensed under GNU GPL v2
 #
 # A getter which will download the media to a local file storage
@@ -43,6 +44,8 @@ sub get {
         $self->_encode($video->{'DLURL'}),
         $self->_encode($video)->{'URL'});
 
+    $dlfile =~ s/([\\"])/\\$1/g;
+
     $dirname = dirname($dlfile);
     if ($self->_diskfree($dirname) < $self->_getval('MINFREE')) {
         $self->error("Not enough free space to download");