diff --git a/Tools/scripts/pathfix.py b/Tools/scripts/pathfix.py
index 6cbac10..dd08e0a 100755
--- a/Tools/scripts/pathfix.py
+++ b/Tools/scripts/pathfix.py
@@ -30,20 +30,24 @@
 rep = sys.stdout.write
 
 new_interpreter = None
+preserve_timestamps = False
 
 def main():
     global new_interpreter
-    usage = ('usage: %s -i /interpreter file-or-directory ...\n' %
+    global preserve_timestamps
+    usage = ('usage: %s -i /interpreter -p file-or-directory ...\n' %
              sys.argv[0])
     try:
-        opts, args = getopt.getopt(sys.argv[1:], 'i:')
+        opts, args = getopt.getopt(sys.argv[1:], 'i:p')
     except getopt.error as msg:
-        err(msg + '\n')
+        err(str(msg) + '\n')
         err(usage)
         sys.exit(2)
     for o, a in opts:
         if o == '-i':
             new_interpreter = a.encode()
+        if o == '-p':
+            preserve_timestamps = True
     if not new_interpreter or not new_interpreter.startswith(b'/') or \
            not args:
         err('-i option or file-or-directory missing\n')
@@ -119,9 +123,13 @@
 
     # Finishing touch -- move files
 
+    mtime = None
+    atime = None
     # First copy the file's mode to the temp file
     try:
         statbuf = os.stat(filename)
+        mtime = statbuf.st_mtime
+        atime = statbuf.st_atime
         os.chmod(tempname, statbuf[ST_MODE] & 0o7777)
     except os.error as msg:
         err('%s: warning: chmod failed (%r)\n' % (tempname, msg))
@@ -136,6 +144,13 @@
     except os.error as msg:
         err('%s: rename failed (%r)\n' % (filename, msg))
         return 1
+    if preserve_timestamps:
+        if atime and mtime:
+            try:
+                os.utime(filename, (atime, mtime))
+            except os.error as msg:
+                err('%s: reset of timestamp failed (%r)\n' % (filename, msg))
+                return 1
     # Return succes
     return 0
 
