diff --git a/loadbj.m b/loadbj.m index d5f50cb1c5e49f982a9fa11ca4af6662c63f447e..ac6a5ae789c288494f2d720ad0ec7746cfbd6ca3 100644 --- a/loadbj.m +++ b/loadbj.m @@ -150,7 +150,12 @@ function [data, mmap] = loadbj(fname,varargin) end if(jsonopt('JDataDecode',1,varargin{:})==1) - data=jdatadecode(data,'Base64',0,'Recursive',1,varargin{:}); + try + data=jdatadecode(data,'Base64',0,'Recursive',1,varargin{:}); + catch ME + warning(['Failed to decode embedded JData annotations, '... + 'return raw JSON data\n\nError: %s\n%s'], ME.identifier, ME.message); + end end end diff --git a/loadjson.m b/loadjson.m index 4f89361afad29898d78b4ef500be422aa0ab6358..f704a518c194ce2a3643a93bf4be872cfdb13101 100644 --- a/loadjson.m +++ b/loadjson.m @@ -192,7 +192,12 @@ function [data, mmap] = loadjson(fname,varargin) end if(jsonopt('JDataDecode',1,varargin{:})==1) - data=jdatadecode(data,'Base64',1,'Recursive',1,varargin{:}); + try + data=jdatadecode(data,'Base64',1,'Recursive',1,varargin{:}); + catch ME + warning(['Failed to decode embedded JData annotations, '... + 'return raw JSON data\n\nError: %s\n%s'], ME.identifier, ME.message); + end end if(isfield(opt,'progressbar_'))