summaryrefslogtreecommitdiff
path: root/math/sc-im/files/patch-file.c
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2018-08-19 14:38:07 +0000
committerKurt Jaeger <pi@FreeBSD.org>2018-08-19 14:38:07 +0000
commit2f8afdcc5141c264588358e59c61068196acf961 (patch)
treea2c45a0254b5ec18f008d863fc50673cc943b0e3 /math/sc-im/files/patch-file.c
parentdatabases/ora2pg: update 18.2 -> 19.0 (diff)
math/sc-im: fix segmentation fault upon :wq
- bug reported upstream as https://github.com/andmarti1424/sc-im/pull/280 PR: 227861 Submitted by: Samy Mahmoudi <samy.mahmoudi@gmail.com> Approved by: bapt (maintainer timeout)
Diffstat (limited to 'math/sc-im/files/patch-file.c')
-rw-r--r--math/sc-im/files/patch-file.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/math/sc-im/files/patch-file.c b/math/sc-im/files/patch-file.c
new file mode 100644
index 000000000000..7f5c554e6651
--- /dev/null
+++ b/math/sc-im/files/patch-file.c
@@ -0,0 +1,16 @@
+--- file.c.orig 2017-12-13 17:48:59 UTC
++++ file.c
+@@ -202,7 +202,12 @@ int savefile() {
+ del_range_chars(name, 0, 1 + force_rewrite);
+ wordexp(name, &p, 0);
+
+- if (! force_rewrite && p.we_wordv[0] && file_exists(p.we_wordv[0])) {
++ if (wcslen(inputline) > 2 && (!p.we_wordv || !p.we_wordv[0])) {
++ sc_error("Trailing space(s)");
++ return -1;
++ }
++
++ if (! force_rewrite && p.we_wordv && p.we_wordv[0] && file_exists(p.we_wordv[0])) {
+ sc_error("File already exists. Use \"!\" to force rewrite.");
+ wordfree(&p);
+ return -1;