Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 #!/usr/bin/env python
2 # This Source Code Form is subject to the terms of the Mozilla Public
3 # License, v. 2.0. If a copy of the MPL was not distributed with this
4 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 #
6 # Execute as: /import.py <source-distribution> <target-dir>
7 # <target-dir> must have 'IMPORT_FILES' in it
9 import sys
10 import re
11 import os
12 import shutil
14 def die(msg):
15 sys.stderr.write('ERROR:' + msg + '\n')
16 sys.exit(1)
18 DISTRO = sys.argv[1]
19 IMPORT_DIR = sys.argv[2]
20 FILES = []
22 f = open("%s/IMPORT_FILES" % IMPORT_DIR)
23 for l in f:
24 l = l.strip()
25 l = l.strip("'")
26 if l.startswith("#"):
27 continue
28 if not l:
29 continue
30 FILES.append(l)
32 for f in FILES:
33 print f
34 SOURCE_PATH = "%s/%s"%(DISTRO,f)
35 DEST_PATH = "%s/%s"%(IMPORT_DIR,f)
36 if not os.path.exists(SOURCE_PATH):
37 die("%s does not exist"%SOURCE_PATH)
38 if not os.path.exists(os.path.dirname(DEST_PATH)):
39 os.makedirs(os.path.dirname(DEST_PATH))
40 shutil.copyfile(SOURCE_PATH, DEST_PATH)