Преглед изворни кода

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

Guillaume Ayoub пре 16 година
родитељ
комит
f38576d999
1 измењених фајлова са 3 додато и 1 уклоњено
  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)