summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/main.c b/main.c
index 60beed2..d67d742 100644
--- a/main.c
+++ b/main.c
@@ -33,10 +33,14 @@ threadmain(int argc, char *argv[])
restart:
if(setjmp(eg->jmp)){
ThreadData *td = getthreaddata();
- if(td->lasterrormsg)
- print("%S: %S\n", errorstrs[td->lasterror], td->lasterrormsg);
- else
- print("%S\n", errorstrs[td->lasterror]);
+ Rune *msg = errorstr(td->lasterror);
+ if(td->lasterrormsg){
+ if(runestrlen(msg) == 0)
+ print("%S\n", td->lasterrormsg);
+ else
+ print("%S: %S\n", errorstr(td->lasterror), td->lasterrormsg);
+ }else
+ print("%S\n", errorstr(td->lasterror));
while(getcurrentdfn())
popdfnframe();
goto restart;