diff options
author | Alon Zakai <alonzakai@gmail.com> | 2014-02-12 15:54:26 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2014-02-12 15:54:26 -0800 |
commit | b8dc7df9a17fe5b4f7e4e5845229443a06c59fa7 (patch) | |
tree | bb4ea9c8149a651529fa8dd8ae3cbce21d9d0450 | |
parent | fa9638d281a07ce70f380e7a1322c9144a1e6e03 (diff) |
fix bug on using file packager on subdirs; fixes #2123
-rw-r--r-- | tests/test_browser.py | 19 | ||||
-rw-r--r-- | tools/file_packager.py | 5 |
2 files changed, 17 insertions, 7 deletions
diff --git a/tests/test_browser.py b/tests/test_browser.py index fbd1001c..ddd70362 100644 --- a/tests/test_browser.py +++ b/tests/test_browser.py @@ -1460,14 +1460,23 @@ keydown(100);keyup(100); // trigger the end self.btest('emscripten_api_browser.cpp', '1', args=['-s', '''EXPORTED_FUNCTIONS=['_main', '_third']''']) def test_emscripten_api2(self): - open('script1.js', 'w').write(''' - Module._set(456); - ''') + def setup(): + open('script1.js', 'w').write(''' + Module._set(456); + ''') + open('file1.txt', 'w').write('first'); + open('file2.txt', 'w').write('second'); - open('file1.txt', 'w').write('first'); - open('file2.txt', 'w').write('second'); + setup() Popen([PYTHON, FILE_PACKAGER, 'test.data', '--preload', 'file1.txt', 'file2.txt'], stdout=open('script2.js', 'w')).communicate() + self.btest('emscripten_api_browser2.cpp', '1', args=['-s', '''EXPORTED_FUNCTIONS=['_main', '_set']''']) + # check using file packager to another dir + self.clear() + setup() + os.mkdir('sub') + Popen([PYTHON, FILE_PACKAGER, 'sub/test.data', '--preload', 'file1.txt', 'file2.txt'], stdout=open('script2.js', 'w')).communicate() + shutil.copyfile(os.path.join('sub', 'test.data'), 'test.data') self.btest('emscripten_api_browser2.cpp', '1', args=['-s', '''EXPORTED_FUNCTIONS=['_main', '_set']''']) def test_emscripten_api_infloop(self): diff --git a/tools/file_packager.py b/tools/file_packager.py index aa70ac6a..12cc5475 100644 --- a/tools/file_packager.py +++ b/tools/file_packager.py @@ -468,9 +468,10 @@ if has_preloaded: ''' % use_data package_uuid = uuid.uuid4(); - remote_package_name = os.path.basename(Compression.compressed_name(data_target) if Compression.on else data_target) - statinfo = os.stat(remote_package_name) + package_name = Compression.compressed_name(data_target) if Compression.on else data_target + statinfo = os.stat(package_name) remote_package_size = statinfo.st_size + remote_package_name = os.path.basename(package_name) ret += r''' var PACKAGE_PATH; if (typeof window === 'object') { |