svn commit: r477579 - in head/math/sc-im: . files
Kurt Jaeger
pi at FreeBSD.org
Sun Aug 19 14:38:09 UTC 2018
Author: pi
Date: Sun Aug 19 14:38:07 2018
New Revision: 477579
URL: https://svnweb.freebsd.org/changeset/ports/477579
Log:
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 at gmail.com>
Approved by: bapt (maintainer timeout)
Added:
head/math/sc-im/files/
head/math/sc-im/files/patch-cmds__command.c (contents, props changed)
head/math/sc-im/files/patch-doc (contents, props changed)
head/math/sc-im/files/patch-file.c (contents, props changed)
Modified:
head/math/sc-im/Makefile
Modified: head/math/sc-im/Makefile
==============================================================================
--- head/math/sc-im/Makefile Sun Aug 19 14:26:10 2018 (r477578)
+++ head/math/sc-im/Makefile Sun Aug 19 14:38:07 2018 (r477579)
@@ -1,9 +1,10 @@
# $FreeBSD$
-PORTNAME= sc-im
-PORTVERSION= 0.7.0
+PORTNAME= sc-im
+PORTVERSION= 0.7.0
DISTVERSIONPREFIX= v
-CATEGORIES= math
+PORTREVISION= 1
+CATEGORIES= math
MAINTAINER= bapt at FreeBSD.org
COMMENT= Ncurses spreadsheet program for terminal
Added: head/math/sc-im/files/patch-cmds__command.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/sc-im/files/patch-cmds__command.c Sun Aug 19 14:38:07 2018 (r477579)
@@ -0,0 +1,11 @@
+--- cmds_command.c.orig 2018-08-03 06:04:39 UTC
++++ cmds_command.c
+@@ -826,7 +826,7 @@ void do_commandmode(struct block * sb) {
+ exec_cmd(line);
+
+ } else if ( inputline[0] == L'w' ) {
+- if (savefile() == 0 && ! wcscmp(inputline, L"wq")) shall_quit = 1;
++ if (savefile() == 0 && ! wcsncmp(inputline, L"wq", 2)) shall_quit = 1;
+
+ } else if ( ! wcsncmp(inputline, L"file ", 5) ) {
+
Added: head/math/sc-im/files/patch-doc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/sc-im/files/patch-doc Sun Aug 19 14:38:07 2018 (r477579)
@@ -0,0 +1,11 @@
+--- doc.orig 2018-08-03 06:09:42 UTC
++++ doc
+@@ -328,6 +328,8 @@ Commands for handling cell content:
+ :w {file} Save the current spreadsheet as {file}.
+ :w! {file} Save the current spreadsheet as {file}, forcing an overwrite
+ if {file} already exists.
++ :wq Save the current spreadsheet and quit SC-IM.
++ :wq {file} Save the current spreadsheet as {file} and quit SC-IM.
+
+ :h Show this help.
+ :help Show this help.
Added: head/math/sc-im/files/patch-file.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/sc-im/files/patch-file.c Sun Aug 19 14:38:07 2018 (r477579)
@@ -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;
More information about the svn-ports-all
mailing list