Staging
v0.5.1
https://github.com/python/cpython
Revision 33add0a95aa6c5ba5dbb8cae7b51a253209ecd6f authored by Guido van Rossum on 18 December 1998, 15:25:22 UTC, committed by Guido van Rossum on 18 December 1998, 15:25:22 UTC
File names with "funny" characters get translated wrong by
pathname2url (any variety).  E.g. the (Unix) file "/ufs/sjoerd/#tmp"
gets translated into "/ufs/sjoerd/#tmp" which, when interpreted as a
URL is file "/ufs/sjoerd/" with fragment ID "tmp".

Here's an easy fix.  (An alternative fix would be to change the
various implementations of pathname2url and url2pathname to include
calls to quote and unquote.

[The main problem is with the normal use of URLs:
	url = url2pathname(file)
	transmit url
	url, tag = splittag(url)
	urlopen(url)
]

In addition, this patch fixes some uses of unquote:
- the host part of URLs should be unquoted
- the file path in the FTP URL should be unquoted before it is split
  into components.
- because of the latter, I removed all unquoting from ftpwrapper,
  and moved it to the caller, but that is not essential
1 parent dc86a4e
History
Tip revision: 33add0a95aa6c5ba5dbb8cae7b51a253209ecd6f authored by Guido van Rossum on 18 December 1998, 15:25:22 UTC
Sjoerd Mullender:
Tip revision: 33add0a
File Mode Size
Makefile.in -rw-r--r-- 2.8 KB
atof.c -rw-r--r-- 2.3 KB
bltinmodule.c -rw-r--r-- 52.1 KB
ceval.c -rw-r--r-- 62.6 KB
compile.c -rw-r--r-- 74.0 KB
dup2.c -rw-r--r-- 691 bytes
errors.c -rw-r--r-- 8.8 KB
fmod.c -rw-r--r-- 1.9 KB
frozen.c -rw-r--r-- 2.4 KB
frozenmain.c -rw-r--r-- 2.8 KB
getargs.c -rw-r--r-- 23.8 KB
getcompiler.c -rw-r--r-- 1.8 KB
getcopyright.c -rw-r--r-- 1.6 KB
getcwd.c -rw-r--r-- 2.8 KB
getmtime.c -rw-r--r-- 1.8 KB
getopt.c -rw-r--r-- 2.4 KB
getplatform.c -rw-r--r-- 1.6 KB
getversion.c -rw-r--r-- 1.7 KB
graminit.c -rw-r--r-- 24.1 KB
hypot.c -rw-r--r-- 309 bytes
import.c -rw-r--r-- 54.4 KB
importdl.c -rw-r--r-- 28.7 KB
importdl.h -rw-r--r-- 2.0 KB
marshal.c -rw-r--r-- 15.5 KB
memmove.c -rw-r--r-- 1.9 KB
modsupport.c -rw-r--r-- 10.4 KB
mystrtoul.c -rw-r--r-- 4.6 KB
pyfpe.c -rw-r--r-- 629 bytes
pystate.c -rw-r--r-- 5.5 KB
pythonmain.c -rw-r--r-- 5.8 KB
pythonrun.c -rw-r--r-- 25.4 KB
sigcheck.c -rw-r--r-- 2.0 KB
strdup.c -rw-r--r-- 321 bytes
strerror.c -rw-r--r-- 1.9 KB
strtod.c -rw-r--r-- 5.1 KB
structmember.c -rw-r--r-- 6.5 KB
sysmodule.c -rw-r--r-- 18.0 KB
thread.c -rw-r--r-- 3.7 KB
thread_beos.h -rw-r--r-- 8.8 KB
thread_cthread.h -rw-r--r-- 4.8 KB
thread_foobar.h -rw-r--r-- 3.8 KB
thread_lwp.h -rw-r--r-- 5.1 KB
thread_nt.h -rw-r--r-- 6.8 KB
thread_os2.h -rw-r--r-- 5.1 KB
thread_pthread.h -rw-r--r-- 11.4 KB
thread_sgi.h -rw-r--r-- 13.0 KB
thread_solaris.h -rw-r--r-- 5.6 KB
traceback.c -rw-r--r-- 6.7 KB

back to top