[nano] new upstream release (#680736)
Kamil Dudka
kdudka at fedoraproject.org
Thu Mar 3 11:11:41 UTC 2011
commit d4b92eee66515c5abc9d5195a678ea1576af7118
Author: Kamil Dudka <kdudka at redhat.com>
Date: Thu Mar 3 12:05:56 2011 +0100
new upstream release (#680736)
- new upstream release (#680736)
- use hunspell as default spell-checker (#681000)
- fix for http://thread.gmane.org/gmane.editors.nano.devel/2911
.gitignore | 1 +
...s-result-and-avoid-calling-stat-on-a-NULL.patch | 10 +-
...se-futimens-if-available-instead-of-utime.patch | 24 ++--
nano-2.3.0-color-debug.patch | 118 ++++++++++++++++++++
...2.3-warnings.patch => nano-2.3.0-warnings.patch | 32 +++---
nano.spec | 23 +++-
sources | 2 +-
7 files changed, 171 insertions(+), 39 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index fd915c7..e54bda6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
nano-2.2.5.tar.gz
/nano-2.2.6.tar.gz
+/nano-2.3.0.tar.gz
diff --git a/0001-check-stat-s-result-and-avoid-calling-stat-on-a-NULL.patch b/0001-check-stat-s-result-and-avoid-calling-stat-on-a-NULL.patch
index 9922877..739f6f5 100644
--- a/0001-check-stat-s-result-and-avoid-calling-stat-on-a-NULL.patch
+++ b/0001-check-stat-s-result-and-avoid-calling-stat-on-a-NULL.patch
@@ -1,4 +1,4 @@
-From 63c92c82a8de237f22648d4ffef64b9ad23eb2e3 Mon Sep 17 00:00:00 2001
+From fc87b0a32c130a2b3ab37e614d4a1c6c8e5d70e7 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka at redhat.com>
Date: Thu, 19 Aug 2010 13:58:12 +0200
Subject: [PATCH 1/2] check stat's result and avoid calling stat on a NULL pointer
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] check stat's result and avoid calling stat on a NULL pointe
1 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/src/files.c b/src/files.c
-index c5b9d6a..656a684 100644
+index f6efbf1..99cc1b8 100644
--- a/src/files.c
+++ b/src/files.c
@@ -103,6 +103,24 @@ void initialize_buffer_text(void)
@@ -49,7 +49,7 @@ index c5b9d6a..656a684 100644
#endif
}
-@@ -1511,8 +1525,8 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
+@@ -1532,8 +1546,8 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
* specified it interactively), stat and save the value
* or else we will chase null pointers when we do
* modtime checks, preserve file times, etc. during backup */
@@ -60,7 +60,7 @@ index c5b9d6a..656a684 100644
/* We backup only if the backup toggle is set, the file isn't
* temporary, and the file already exists. Furthermore, if we
-@@ -1894,7 +1908,10 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
+@@ -1924,7 +1938,10 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
if (openfile->current_stat == NULL)
openfile->current_stat =
(struct stat *)nmalloc(sizeof(struct stat));
@@ -73,5 +73,5 @@ index c5b9d6a..656a684 100644
statusbar(P_("Wrote %lu line", "Wrote %lu lines",
--
-1.7.3.2
+1.7.4
diff --git a/0002-use-futimens-if-available-instead-of-utime.patch b/0002-use-futimens-if-available-instead-of-utime.patch
index 76901dc..d2a687f 100644
--- a/0002-use-futimens-if-available-instead-of-utime.patch
+++ b/0002-use-futimens-if-available-instead-of-utime.patch
@@ -1,4 +1,4 @@
-From e014ef2cf988a232a702292c82cd577719d08d8c Mon Sep 17 00:00:00 2001
+From 23510b930ea31f7de8005e2f0ff6cab7062b4e26 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka at redhat.com>
Date: Thu, 19 Aug 2010 15:23:06 +0200
Subject: [PATCH 2/2] use futimens() if available, instead of utime()
@@ -7,11 +7,11 @@ Subject: [PATCH 2/2] use futimens() if available, instead of utime()
config.h.in | 3 +++
configure | 2 +-
configure.ac | 2 +-
- src/files.c | 46 +++++++++++++++++++++++++++++++++++-----------
- 4 files changed, 40 insertions(+), 13 deletions(-)
+ src/files.c | 48 +++++++++++++++++++++++++++++++++++-------------
+ 4 files changed, 40 insertions(+), 15 deletions(-)
diff --git a/config.h.in b/config.h.in
-index 8fbe824..fb0e65d 100644
+index 52e13f1..cb17b29 100644
--- a/config.h.in
+++ b/config.h.in
@@ -64,6 +64,9 @@
@@ -25,7 +25,7 @@ index 8fbe824..fb0e65d 100644
#undef HAVE_GETDELIM
diff --git a/configure b/configure
-index 238dbf9..f1ef55b 100755
+index 02733c7..1805e53 100755
--- a/configure
+++ b/configure
@@ -7484,7 +7484,7 @@ fi
@@ -38,7 +38,7 @@ index 238dbf9..f1ef55b 100755
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
diff --git a/configure.ac b/configure.ac
-index 6388c03..255ec5d 100644
+index 66f8ee3..f4975d3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -415,7 +415,7 @@ fi])
@@ -51,10 +51,10 @@ index 6388c03..255ec5d 100644
if test x$enable_utf8 != xno; then
AC_CHECK_FUNCS(iswalnum iswblank iswpunct iswspace nl_langinfo mblen mbstowcs mbtowc wctomb wcwidth)
diff --git a/src/files.c b/src/files.c
-index 656a684..889c4a8 100644
+index 99cc1b8..9a1bdcc 100644
--- a/src/files.c
+++ b/src/files.c
-@@ -1434,6 +1434,29 @@ int copy_file(FILE *inn, FILE *out)
+@@ -1455,6 +1455,29 @@ int copy_file(FILE *inn, FILE *out)
return retval;
}
@@ -84,7 +84,7 @@ index 656a684..889c4a8 100644
/* Write a file out to disk. If f_open isn't NULL, we assume that it is
* a stream associated with the file, and we don't try to open it
* ourselves. If tmp is TRUE, we set the umask to disallow anyone else
-@@ -1666,6 +1689,18 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
+@@ -1694,6 +1717,18 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
fprintf(stderr, "Backing up %s to %s\n", realname, backupname);
#endif
@@ -103,12 +103,14 @@ index 656a684..889c4a8 100644
/* Copy the file. */
copy_status = copy_file(f, backup_file);
-@@ -1676,17 +1711,6 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
+@@ -1704,19 +1739,6 @@ bool write_file(const char *name, FILE *f_open, bool tmp, append_type
goto cleanup_and_exit;
}
- /* And set its metadata. */
- if (utime(backupname, &filetime) == -1 && !ISSET(INSECURE_BACKUP)) {
+- if (prompt_failed_backupwrite(backupname))
+- goto skip_backup;
- statusbar(_("Error writing backup file %s: %s"), backupname,
- strerror(errno));
- /* If we can't write to the backup, DONT go on, since
@@ -122,5 +124,5 @@ index 656a684..889c4a8 100644
}
--
-1.7.3.2
+1.7.4
diff --git a/nano-2.3.0-color-debug.patch b/nano-2.3.0-color-debug.patch
new file mode 100644
index 0000000..a2e2419
--- /dev/null
+++ b/nano-2.3.0-color-debug.patch
@@ -0,0 +1,118 @@
+From ea296ebe2f027e40457d116c40e687f1724fab90 Mon Sep 17 00:00:00 2001
+From: Kamil Dudka <kdudka at redhat.com>
+Date: Thu, 3 Mar 2011 12:02:51 +0100
+Subject: [PATCH] nano-2.3.0 likes to tell me it matched
+
+From: Mike Frysinger <vapier <at> gentoo.org>
+Newsgroups: gmane.editors.nano.devel
+Date: 2011-03-03 09:44:20 GMT (1 hour and 16 minutes ago)
+
+when i save the attached file, nano writes to stdout (not via ncurses)
+the string "We matched!"
+-mike
+
+--
+http://thread.gmane.org/gmane.editors.nano.devel/2911
+---
+ src/color.c | 36 +++++++++++++++---------------------
+ 1 files changed, 15 insertions(+), 21 deletions(-)
+
+diff --git a/src/color.c b/src/color.c
+index 269cd21..8dfcf23 100644
+--- a/src/color.c
++++ b/src/color.c
+@@ -31,6 +31,12 @@
+ #include <magic.h>
+ #endif
+
++#ifdef DEBUG
++# define debug_printf(...) fprintf(stderr, __VA_ARGS__)
++#else
++# define debug_printf(...)
++#endif
++
+ #ifdef ENABLE_COLOR
+
+ /* For each syntax list entry, go through the list of colors and assign
+@@ -100,9 +106,7 @@ void color_init(void)
+
+ init_pair(tmpcolor->pairnum, foreground, background);
+
+-#ifdef DEBUG
+- fprintf(stderr, "init_pair(): fg = %hd, bg = %hd\n", tmpcolor->fg, tmpcolor->bg);
+-#endif
++ debug_printf("init_pair(): fg = %hd, bg = %hd\n", tmpcolor->fg, tmpcolor->bg);
+ }
+ }
+ }
+@@ -167,16 +171,14 @@ void color_update(void)
+ #endif /* DEBUG */
+ MAGIC_ERROR);
+ if (m == NULL || magic_load(m, NULL) < 0)
+- fprintf(stderr, "something went wrong: %s [%s]\n", strerror(errno), openfile->filename);
++ debug_printf("something went wrong: %s [%s]\n", strerror(errno), openfile->filename);
+ else {
+ magicstring = magic_file(m,openfile->filename);
+ if (magicstring == NULL) {
+ magicerr = magic_error(m);
+- fprintf(stderr, "something went wrong: %s [%s]\n", magicerr, openfile->filename);
++ debug_printf("something went wrong: %s [%s]\n", magicerr, openfile->filename);
+ }
+-#ifdef DEBUG
+- fprintf(stderr, "magic string returned: %s\n", magicstring);
+-#endif /* DEBUG */
++ debug_printf("magic string returned: %s\n", magicstring);
+ }
+ }
+ #endif /* HAVE_LIBMAGIC */
+@@ -227,9 +229,7 @@ void color_update(void)
+ #ifdef HAVE_LIBMAGIC
+ if (openfile->colorstrings == NULL) {
+
+-#ifdef DEBUG
+- fprintf(stderr, "No match using extension, trying libmagic...\n");
+-#endif /* DEBUG */
++ debug_printf("No match using extension, trying libmagic...\n");
+
+ for (tmpsyntax = syntaxes; tmpsyntax != NULL;
+ tmpsyntax = tmpsyntax->next) {
+@@ -239,12 +239,10 @@ void color_update(void)
+ e->ext = (regex_t *)nmalloc(sizeof(regex_t));
+ regcomp(e->ext, fixbounds(e->ext_regex), REG_EXTENDED);
+ }
+-#ifdef DEBUG
+- fprintf(stderr,"Matching regex \"%s\" against \"%s\"\n",e->ext_regex, magicstring);
+-#endif /* DEBUG */
++ debug_printf("Matching regex \"%s\" against \"%s\"\n",e->ext_regex, magicstring);
+
+ if (magicstring && regexec(e->ext, magicstring, 0, NULL, 0) == 0) {
+- fprintf(stderr,"We matched!\n");
++ debug_printf("We matched!\n");
+ openfile->syntax = tmpsyntax;
+ openfile->colorstrings = tmpsyntax->color;
+ break;
+@@ -259,9 +257,7 @@ void color_update(void)
+
+ /* If we haven't matched anything yet, try the headers */
+ if (openfile->colorstrings == NULL) {
+-#ifdef DEBUG
+- fprintf(stderr, "No match for file extensions, looking at headers...\n");
+-#endif
++ debug_printf("No match for file extensions, looking at headers...\n");
+ for (tmpsyntax = syntaxes; tmpsyntax != NULL;
+ tmpsyntax = tmpsyntax->next) {
+
+@@ -278,9 +274,7 @@ void color_update(void)
+
+ /* Set colorstrings if we matched the extension
+ * regex. */
+-#ifdef DEBUG
+- fprintf(stderr, "Comparing header regex \"%s\" to fileage \"%s\"...\n", e->ext_regex, openfile->fileage->data);
+-#endif
++ debug_printf("Comparing header regex \"%s\" to fileage \"%s\"...\n", e->ext_regex, openfile->fileage->data);
+ if (regexec(e->ext, openfile->fileage->data, 0, NULL, 0) == 0) {
+ openfile->syntax = tmpsyntax;
+ openfile->colorstrings = tmpsyntax->color;
+--
+1.7.4
+
diff --git a/nano-2.2.3-warnings.patch b/nano-2.3.0-warnings.patch
similarity index 55%
rename from nano-2.2.3-warnings.patch
rename to nano-2.3.0-warnings.patch
index e003f99..5fa5617 100644
--- a/nano-2.2.3-warnings.patch
+++ b/nano-2.3.0-warnings.patch
@@ -1,7 +1,6 @@
po/Makefile.in.in | 1 +
src/nano.c | 2 +-
- src/winio.c | 1 -
- 3 files changed, 2 insertions(+), 2 deletions(-)
+ 2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index ada8bb4..f7b2a95 100644
@@ -16,10 +15,10 @@ index ada8bb4..f7b2a95 100644
localedir = $(datadir)/locale
gettextsrcdir = $(datadir)/gettext/po
diff --git a/src/nano.c b/src/nano.c
-index 59e2a9d..1d1d40c 100644
+index 269ab29..5b605bf 100644
--- a/src/nano.c
+++ b/src/nano.c
-@@ -1907,7 +1907,7 @@ precalc_cleanup:
+@@ -1925,7 +1925,7 @@ precalc_cleanup:
* TRUE. */
void do_output(char *output, size_t output_len, bool allow_cntrls)
{
@@ -28,15 +27,16 @@ index 59e2a9d..1d1d40c 100644
char *char_buf = charalloc(mb_cur_max());
int char_buf_len;
-diff --git a/src/winio.c b/src/winio.c
-index 1aef2a9..9fde5a2 100644
---- a/src/winio.c
-+++ b/src/winio.c
-@@ -3125,7 +3125,6 @@ void edit_redraw(filestruct *old_current, size_t pww_save)
- old_current->lineno, openfile->edittop->lineno);
- #endif
- filestruct *old_edittop = openfile->edittop;
-- ssize_t nlines;
-
- #ifndef NANO_TINY
- /* If the mark is on, update all the lines between old_current
+diff --git a/src/search.c b/src/search.c
+index ca93098..3451600 100644
+--- a/src/search.c
++++ b/src/search.c
+@@ -138,7 +138,7 @@ int search_init(bool replacing, bool use_answer)
+ int i = 0;
+ char *buf;
+ sc *s;
+- void (*func)(void);
++ void (*func)(void) = (void (*)(void))0;
+ bool meta_key = FALSE, func_key = FALSE;
+ static char *backupstring = NULL;
+ /* The search string we'll be using. */
diff --git a/nano.spec b/nano.spec
index b317e49..8d79e5d 100644
--- a/nano.spec
+++ b/nano.spec
@@ -1,13 +1,13 @@
Summary: A small text editor
Name: nano
-Version: 2.2.6
-Release: 3%{?dist}
+Version: 2.3.0
+Release: 1%{?dist}
License: GPLv3+
Group: Applications/Editors
URL: http://www.nano-editor.org
-Source: http://www.nano-editor.org/dist/v2.2/%{name}-%{version}.tar.gz
+Source: http://www.nano-editor.org/dist/v2.3/%{name}-%{version}.tar.gz
Source2: nanorc
-Patch0: nano-2.2.3-warnings.patch
+Patch0: nano-2.3.0-warnings.patch
# http://lists.gnu.org/archive/html/nano-devel/2010-08/msg00004.html
Patch1: 0001-check-stat-s-result-and-avoid-calling-stat-on-a-NULL.patch
@@ -15,6 +15,9 @@ Patch1: 0001-check-stat-s-result-and-avoid-calling-stat-on-a-NULL.patch
# http://lists.gnu.org/archive/html/nano-devel/2010-08/msg00005.html
Patch2: 0002-use-futimens-if-available-instead-of-utime.patch
+# http://thread.gmane.org/gmane.editors.nano.devel/2911
+Patch3: nano-2.3.0-color-debug.patch
+
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: autoconf
BuildRequires: gettext-devel
@@ -32,6 +35,7 @@ GNU nano is a small and friendly text editor.
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
for f in doc/man/fr/{nano.1,nanorc.5,rnano.1} ; do
iconv -f iso-8859-1 -t utf-8 -o $f.tmp $f && mv $f.tmp $f
@@ -56,8 +60,10 @@ ln -s ../../bin/nano ${RPM_BUILD_ROOT}%{_bindir}/nano
ln -s ../../bin/rnano ${RPM_BUILD_ROOT}%{_bindir}/rnano
cp %{SOURCE2} ./nanorc
-# disable line wrapping by default
-sed 's/# set nowrap/set nowrap/' doc/nanorc.sample >> ./nanorc
+# disable line wrapping by default and set hunspell as the default spell-checker
+sed -e 's/# set nowrap/set nowrap/' \
+ -e 's/^#.*set speller.*$/set speller "hunspell"/' \
+ doc/nanorc.sample >> ./nanorc
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
install -m 644 ./nanorc $RPM_BUILD_ROOT%{_sysconfdir}/nanorc
@@ -94,6 +100,11 @@ rm -rf %{buildroot}
%{_datadir}/nano
%changelog
+* Thu Mar 03 2011 Kamil Dudka <kdudka at redhat.com> - 2.3.0-1
+- new upstream release (#680736)
+- use hunspell as default spell-checker (#681000)
+- fix for http://thread.gmane.org/gmane.editors.nano.devel/2911
+
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.2.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
diff --git a/sources b/sources
index b68b3fd..407e32d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-03233ae480689a008eb98feb1b599807 nano-2.2.6.tar.gz
+88bc88e8ae5dad7a85bc84e09df64475 nano-2.3.0.tar.gz
More information about the scm-commits
mailing list