summaryrefslogtreecommitdiff
path: root/error.c
diff options
context:
space:
mode:
authorglenda <glenda@cirno>2022-09-10 16:25:05 +0000
committerglenda <glenda@cirno>2022-09-10 16:25:05 +0000
commite2ebfbb7d19ff3b990eb51dc9843200053cbbf98 (patch)
tree986b0353a1179f803872b1578ebfe0acd83050bd /error.c
parentd07d4afcb8acff3757394f2f9822d014f31fecf0 (diff)
Improve the session a lot
Diffstat (limited to 'error.c')
-rw-r--r--error.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/error.c b/error.c
index 7ec8b68..45670f5 100644
--- a/error.c
+++ b/error.c
@@ -71,4 +71,17 @@ errorstr(int code)
default: err = L""; break;
}
return err;
+}
+
+void
+displayerror(void)
+{
+ ThreadData *td = getthreaddata();
+ Array *error = allocarray(AtypeArray, 1, 3);
+ error->shape[0] = 3;
+ error->arraydata[0] = mkrunearray(errorstr(td->lasterror));
+ error->arraydata[1] = mkrunearray(td->lasterrormsg ? td->lasterrormsg : L"");
+ error->arraydata[2] = fnSame(td->name);
+ rundfn(L"0::⎕RAWIO←⍵ ⋄ ('!' ⍵) ⍈ ⎕SESSION", nil, nil, nil, error);
+ freearray(error);
} \ No newline at end of file