Skip to content

Commit c9dc8c9

Browse files
committed
Merge pull request #8 from SasView/loader_error_handling
Improve loading error handling
2 parents 9194009 + faa3ae7 commit c9dc8c9

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

src/sas/sascalc/dataloader/readers/cansas_reader.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -220,8 +220,8 @@ def read(self, xml_file):
220220
return_value = self._final_cleanup(return_value)
221221
output.append(return_value)
222222
else:
223-
output.append("Invalid XML at: {0}".format(\
224-
self.find_invalid_xml()))
223+
raise RuntimeError, "Invalid XML at: {0}".format(\
224+
self.find_invalid_xml())
225225
except:
226226
# If the file does not match the schema, raise this error
227227
raise RuntimeError, "%s cannot be read" % xml_file

src/sas/sasgui/guiframe/local_perspectives/data_loader/data_loader.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,9 +154,14 @@ def _process_data_and_errors(self, item, p_file, output, message):
154154
error message to be sure user knows the issue.
155155
"""
156156
data_error = False
157-
for error_data in item.errors:
157+
if hasattr(item, 'errors'):
158+
for error_data in item.errors:
159+
data_error = True
160+
message += "\tError: {0}\n".format(error_data)
161+
else:
162+
logging.error("Loader returned an invalid object:\n %s" % str(item))
158163
data_error = True
159-
message += "\tError: {0}\n".format(error_data)
164+
160165
data = self.parent.create_gui_data(item, p_file)
161166
output[data.id] = data
162167
return output, message, data_error
@@ -202,6 +207,7 @@ def get_data(self, path, format=None):
202207
output,
203208
error_message)
204209
except:
210+
logging.error(sys.exc_value)
205211
any_error = True
206212
if any_error or error_message != "":
207213
if error_message == "":

0 commit comments

Comments
 (0)