From 3a3aa3efb683b9c051a10501d7c38a8ffca6ed0e Mon Sep 17 00:00:00 2001 From: Scott Nonnenberg Date: Wed, 17 May 2017 18:01:33 -0700 Subject: [PATCH] Remove test/protos symlink, use window.PROTO_ROOT for config --- js/libtextsecure.js | 17 ++++++++++++----- libtextsecure/protobufs.js | 20 ++++++++++++-------- preload.js | 1 + test/_test.js | 1 + test/protos | 1 - test/test.js | 1 + 6 files changed, 27 insertions(+), 14 deletions(-) delete mode 120000 test/protos diff --git a/js/libtextsecure.js b/js/libtextsecure.js index 099ada4d0..93628f134 100644 --- a/js/libtextsecure.js +++ b/js/libtextsecure.js @@ -37095,11 +37095,18 @@ Internal.SessionLock.queueJobForNumber = function queueJobForNumber(number, runJ window.textsecure.protobuf = {}; function loadProtoBufs(filename) { - return dcodeIO.ProtoBuf.loadProtoFile({root: 'protos', file: filename}, function(error, result) { - var protos = result.build('textsecure'); - for (var protoName in protos) { - textsecure.protobuf[protoName] = protos[protoName]; - } + return dcodeIO.ProtoBuf.loadProtoFile({root: window.PROTO_ROOT, file: filename}, function(error, result) { + if (error) { + throw error; + } + var protos = result.build('textsecure'); + if (!protos) { + var text = 'Error loading protos from ' + filename + ' (root: ' + window.PROTO_ROOT + ')'; + throw new Error(text); + } + for (var protoName in protos) { + textsecure.protobuf[protoName] = protos[protoName]; + } }); }; diff --git a/libtextsecure/protobufs.js b/libtextsecure/protobufs.js index 253bf51fd..d7f061436 100644 --- a/libtextsecure/protobufs.js +++ b/libtextsecure/protobufs.js @@ -4,14 +4,18 @@ window.textsecure.protobuf = {}; function loadProtoBufs(filename) { - return dcodeIO.ProtoBuf.loadProtoFile({root: 'protos', file: filename}, function(error, result) { - if (error) { - throw error; - } - var protos = result.build('textsecure'); - for (var protoName in protos) { - textsecure.protobuf[protoName] = protos[protoName]; - } + return dcodeIO.ProtoBuf.loadProtoFile({root: window.PROTO_ROOT, file: filename}, function(error, result) { + if (error) { + throw error; + } + var protos = result.build('textsecure'); + if (!protos) { + var text = 'Error loading protos from ' + filename + ' (root: ' + window.PROTO_ROOT + ')'; + throw new Error(text); + } + for (var protoName in protos) { + textsecure.protobuf[protoName] = protos[protoName]; + } }); }; diff --git a/preload.js b/preload.js index 164b89add..91feecb34 100644 --- a/preload.js +++ b/preload.js @@ -3,6 +3,7 @@ console.log('preload'); const electron = require('electron') + window.PROTO_ROOT = 'protos'; window.config = require('url').parse(window.location.toString(), true).query; const ipc = electron.ipcRenderer diff --git a/test/_test.js b/test/_test.js index 119c07aa4..b78313f27 100644 --- a/test/_test.js +++ b/test/_test.js @@ -3,6 +3,7 @@ */ mocha.setup("bdd"); window.assert = chai.assert; +window.PROTO_ROOT = '../protos'; (function() { var OriginalReporter = mocha._reporter; diff --git a/test/protos b/test/protos deleted file mode 120000 index 33fd40660..000000000 --- a/test/protos +++ /dev/null @@ -1 +0,0 @@ -../protos/ \ No newline at end of file diff --git a/test/test.js b/test/test.js index 99daff403..6bdbd16e9 100644 --- a/test/test.js +++ b/test/test.js @@ -12215,6 +12215,7 @@ Library.prototype.test = function(obj, type) { */ mocha.setup("bdd"); window.assert = chai.assert; +window.PROTO_ROOT = '../protos'; (function() { var OriginalReporter = mocha._reporter;