Procházet zdrojové kódy

Use posixpath instead of os.path to normalize request path.

Guillaume Ayoub před 16 roky
rodič
revize
f38576d999
1 změnil soubory, kde provedl 3 přidání a 1 odebrání
  1. 3 1
      radicale/__init__.py

+ 3 - 1
radicale/__init__.py

@@ -34,6 +34,7 @@ should have been included in this package.
 """
 
 import os
+import posixpath
 import base64
 import socket
 # Manage Python2/3 different modules
@@ -106,8 +107,9 @@ class CalendarHTTPHandler(server.BaseHTTPRequestHandler):
     @property
     def _calendar(self):
         """The ``ical.Calendar`` object corresponding to the given path."""
+        # ``self.path`` must be something like a posix path
         # ``normpath`` should clean malformed and malicious request paths
-        attributes = os.path.normpath(self.path.strip("/")).split("/")
+        attributes = posixpath.normpath(self.path.strip("/")).split("/")
         if len(attributes) >= 2:
             path = "%s/%s" % (attributes[0], attributes[1])
             return ical.Calendar(path)