summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorNicolas Dufour <nicoduf@yahoo.fr>2009-06-22 20:55:27 +0000
committerJazzyNico <JazzyNico@users.sourceforge.net>2009-06-22 20:55:27 +0000
commit414d00ce3e22c31934851d8f7a2788ff5af8b8ec (patch)
treed3fd76d030e89d93b799ff9f3261b3185d4332f7 /share
parentBetter Dots transparency default settings (diff)
downloadinkscape-414d00ce3e22c31934851d8f7a2788ff5af8b8ec.tar.gz
inkscape-414d00ce3e22c31934851d8f7a2788ff5af8b8ec.zip
Absolute path fix for bug 386664
(bzr r8140)
Diffstat (limited to 'share')
-rw-r--r--share/extensions/svg_and_media_zip_output.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/share/extensions/svg_and_media_zip_output.py b/share/extensions/svg_and_media_zip_output.py
index 67cabdf22..88c294245 100644
--- a/share/extensions/svg_and_media_zip_output.py
+++ b/share/extensions/svg_and_media_zip_output.py
@@ -33,7 +33,7 @@ TODO
- maybe add better extention
"""
-import inkex, os.path
+import inkex, os.path, urlparse, urllib
import os
import string
import zipfile
@@ -94,9 +94,14 @@ class SVG_and_Media_ZIP_Output(inkex.Effect):
def collectAndZipImages(self, node, docname, z):
xlink = node.get(inkex.addNS('href',u'xlink'))
if (xlink[:4]!='data'):
- absref = node.get(inkex.addNS('absref',u'sodipodi'))
- if absref is None:
- absref = node.get(inkex.addNS('href',u'xlink'))
+ absref=node.get(inkex.addNS('absref','sodipodi'))
+ url=urlparse.urlparse(xlink)
+ href=urllib.unquote(url.path)
+ if os.name == 'nt' and href[0] == '/':
+ href = href[1:]
+ if (href != None):
+ absref=os.path.realpath(href)
+
if (os.path.isfile(absref)):
shutil.copy(absref, self.tmp_dir)
z.write(absref.encode("latin-1"),os.path.basename(absref).encode("latin-1"))