From 646404160b6d92600aee974550cbf224640740a1 Mon Sep 17 00:00:00 2001 From: Kamil Dudka Date: Dec 13 2018 09:16:37 +0000 Subject: update to the latest upstream release - 1.8.0 --- diff --git a/.gitignore b/.gitignore index 18442e6..39a9e05 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1 @@ -tree-1.4b3.tgz -tree-1.5.0.tgz -tree-1.5.1.1.tgz -tree-1.5.1.2.tgz -tree-1.5.2.tgz -tree-1.5.2.1.tgz -tree-1.5.2.2.tgz -tree-1.5.3.tgz -/tree-1.6.0.tgz -/tree-1.7.0.tgz +/tree-1.*.*.tgz diff --git a/sources b/sources index 78ccd63..f156995 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -abe3e03e469c542d8e157cdd93f4d8a6 tree-1.7.0.tgz +SHA512 (tree-1.8.0.tgz) = 3f657a6278ec5eab2fccab39dfd69bf9376811189a368b5e3213dc900b90a4e7a4961fc58eb80ad2efd5b40d2fbd0146ec59f30fe0bba576f93519214f240695 diff --git a/tree-args.patch b/tree-args.patch index 5fa5dd2..ae5b3cc 100644 --- a/tree-args.patch +++ b/tree-args.patch @@ -1,12 +1,16 @@ -diff -up tree-1.6.0/tree.c.args tree-1.6.0/tree.c ---- tree-1.6.0/tree.c.args 2013-04-11 11:53:47.676572649 +0100 -+++ tree-1.6.0/tree.c 2013-04-11 11:56:10.962350448 +0100 -@@ -536,6 +536,8 @@ void usage(int n) + tree.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/tree.c b/tree.c +index 5b56afe..3b4a263 100644 +--- a/tree.c ++++ b/tree.c +@@ -653,6 +653,8 @@ void usage(int n) " --filelimit # Do not descend dirs with more than # files in them.\n" " --timefmt Print and format time according to the format .\n" " -o filename Output to file instead of stdout.\n" + " --du Print directory sizes.\n" + " --prune Prune empty directories from the output.\n" - " -------- File options ---------\n" + " ------- File options -------\n" " -q Print non-printable characters as '?'.\n" " -N Print non-printable characters as is.\n" diff --git a/tree-dircolors-ec.patch b/tree-dircolors-ec.patch index bc05a9d..371ebd2 100644 --- a/tree-dircolors-ec.patch +++ b/tree-dircolors-ec.patch @@ -1,7 +1,11 @@ -diff -up tree-1.6.0/color.c.dircolors-ec tree-1.6.0/color.c ---- tree-1.6.0/color.c.dircolors-ec 2013-07-09 13:29:19.431819355 +0100 -+++ tree-1.6.0/color.c 2013-07-09 13:29:48.820987889 +0100 -@@ -190,7 +190,7 @@ void parse_dir_colors() + color.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/color.c b/color.c +index 67dedbe..bbcc9df 100644 +--- a/color.c ++++ b/color.c +@@ -191,7 +191,7 @@ void parse_dir_colors() if (!norm_flgs) norm_flgs = scopy("00"); if (!endcode) { diff --git a/tree-preserve-timestamps.patch b/tree-preserve-timestamps.patch index 2e432a5..b35b423 100644 --- a/tree-preserve-timestamps.patch +++ b/tree-preserve-timestamps.patch @@ -1,7 +1,11 @@ -diff -up tree-1.6.0/Makefile.preserve-timestamps tree-1.6.0/Makefile ---- tree-1.6.0/Makefile.preserve-timestamps 2011-06-27 16:11:26.000000000 +0100 -+++ tree-1.6.0/Makefile 2011-06-27 16:12:36.394443602 +0100 -@@ -97,9 +97,9 @@ install: tree + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 842281e..ee7fbe6 100644 +--- a/Makefile ++++ b/Makefile +@@ -112,9 +112,9 @@ install: tree install -d $(BINDIR) install -d $(MANDIR) if [ -e $(TREE_DEST) ]; then \ diff --git a/tree-size-field-len.patch b/tree-size-field-len.patch index dff3dcb..d774d0b 100644 --- a/tree-size-field-len.patch +++ b/tree-size-field-len.patch @@ -1,7 +1,11 @@ -diff -up tree-1.7.0/tree.c.size-field-len tree-1.7.0/tree.c ---- tree-1.7.0/tree.c.size-field-len 2014-04-25 16:30:51.539046882 +0100 -+++ tree-1.7.0/tree.c 2014-04-25 16:32:20.098483921 +0100 -@@ -1247,8 +1247,8 @@ int psize(char *buf, off_t size) + tree.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tree.c b/tree.c +index 3b4a263..11072ce 100644 +--- a/tree.c ++++ b/tree.c +@@ -1280,8 +1280,8 @@ int psize(char *buf, off_t size) if (hflag || siflag) { for (idx=size= (usize*usize); idx++,size/=usize); @@ -9,6 +13,6 @@ diff -up tree-1.7.0/tree.c.size-field-len tree-1.7.0/tree.c - else return sprintf(buf, ((size/usize) >= 10)? " %3.0f%c" : " %3.1f%c" , (float)size/(float)usize,unit[idx]); + if (!idx) return sprintf(buf, " %5d", (int)size); + else return sprintf(buf, ((size/usize) >= 10)? " %4.0f%c" : " %4.1f%c" , (float)size/(float)usize,unit[idx]); - } else return sprintf(buf, sizeof(off_t) == sizeof(long long)? " %11lld" : " %9ld", (long long int)size); + } else return sprintf(buf, sizeof(off_t) == sizeof(long long)? " %11lld" : " %9lld", (long long int)size); } diff --git a/tree-static-analysis.patch b/tree-static-analysis.patch index 84a7adc..88acac1 100644 --- a/tree-static-analysis.patch +++ b/tree-static-analysis.patch @@ -4,43 +4,18 @@ Date: Tue, 6 Nov 2018 16:31:32 +0100 Subject: [PATCH] tree: fix programming mistakes detected by static analysis --- - color.c | 6 +++--- - html.c | 5 +++-- - json.c | 11 +++++------ - tree.c | 2 +- - unix.c | 5 +++-- - xml.c | 11 +++++------ - 6 files changed, 20 insertions(+), 20 deletions(-) + html.c | 5 +++-- + json.c | 11 +++++------ + tree.c | 2 +- + unix.c | 5 +++-- + xml.c | 11 +++++------ + 5 files changed, 17 insertions(+), 17 deletions(-) -diff --git a/color.c b/color.c -index b4ef54e..04425dc 100644 ---- a/color.c -+++ b/color.c -@@ -235,8 +235,8 @@ int cmd(char *s) - - for(i=0;cmds[i].cmdnum;i++) - if (!strcmp(cmds[i].cmd,s)) return cmds[i].cmdnum; -- if (s[0] == '*') return DOT_EXTENSION; -- return ERROR; -+ if (s[0] == '*') return DOT_EXTENSION; -+ return ERROR; - } - - int color(u_short mode, char *name, bool orphan, bool islink) -@@ -489,7 +489,7 @@ void initlinedraw(int flag) - for(linedraw=cstable;linedraw->name;++linedraw) - for(s=linedraw->name;*s;++s) - fprintf(stderr," %s\n",*s); -- return; -+ return; - } - if (charset) { - for(linedraw=cstable;linedraw->name;++linedraw) diff --git a/html.c b/html.c index 75e2ed1..35fb525 100644 --- a/html.c +++ b/html.c -@@ -220,7 +220,7 @@ off_t html_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -221,7 +221,7 @@ off_t html_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) if (*(*dir)->lnk == '/') listdir((*dir)->lnk,dt,ft,lev+1,dev); else { @@ -49,7 +24,7 @@ index 75e2ed1..35fb525 100644 if (fflag && !strcmp(d,"/")) sprintf(path,"%s%s",d,(*dir)->lnk); else sprintf(path,"%s/%s",d,(*dir)->lnk); listdir(path,dt,ft,lev+1,dev); -@@ -253,7 +253,7 @@ off_t html_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -254,7 +254,7 @@ off_t html_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) { struct _info **dir; off_t size = 0; @@ -58,7 +33,7 @@ index 75e2ed1..35fb525 100644 dir = getfulltree(d, lev, dev, &size, &err); -@@ -261,6 +261,7 @@ off_t html_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -262,6 +262,7 @@ off_t html_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) htmlr_listdir(dir, d, dt, ft, lev); @@ -70,7 +45,7 @@ diff --git a/json.c b/json.c index 4b15e0d..8c71324 100644 --- a/json.c +++ b/json.c -@@ -97,8 +97,7 @@ off_t json_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -98,8 +98,7 @@ off_t json_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) while(*dir) { if (!noindent) json_indent(lev); @@ -80,7 +55,7 @@ index 4b15e0d..8c71324 100644 for(t=0;ifmt[t];t++) if (ifmt[t] == mt) break; fprintf(outfile,"{\"type\":\"%s\"", ftype[t]); -@@ -140,7 +139,7 @@ off_t json_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -141,7 +140,7 @@ off_t json_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) if (*(*dir)->lnk == '/') listdir((*dir)->lnk,dt,ft,lev+1,dev); else { @@ -89,7 +64,7 @@ index 4b15e0d..8c71324 100644 if (fflag && !strcmp(d,"/")) sprintf(path,"%s%s",d,(*dir)->lnk); else sprintf(path,"%s/%s",d,(*dir)->lnk); listdir(path,dt,ft,lev+1,dev); -@@ -180,7 +179,7 @@ off_t json_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -181,7 +180,7 @@ off_t json_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) { struct _info **dir; off_t size = 0; @@ -98,7 +73,7 @@ index 4b15e0d..8c71324 100644 dir = getfulltree(d, lev, dev, &size, &err); -@@ -188,6 +187,7 @@ off_t json_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -189,6 +188,7 @@ off_t json_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) jsonr_listdir(dir, d, dt, ft, lev); @@ -106,7 +81,7 @@ index 4b15e0d..8c71324 100644 return size; } -@@ -210,8 +210,7 @@ void jsonr_listdir(struct _info **dir, char *d, int *dt, int *ft, u_long lev) +@@ -211,8 +211,7 @@ void jsonr_listdir(struct _info **dir, char *d, int *dt, int *ft, u_long lev) while(*dir) { if (!noindent) json_indent(lev); @@ -120,20 +95,20 @@ diff --git a/tree.c b/tree.c index 03140fe..73dd101 100644 --- a/tree.c +++ b/tree.c -@@ -851,7 +851,7 @@ struct _info **getfulltree(char *d, u_long lev, dev_t dev, off_t *size, char **e +@@ -882,7 +882,7 @@ struct _info **unix_getfulltree(char *d, u_long lev, dev_t dev, off_t *size, cha if (*(*dir)->lnk == '/') - (*dir)->child = getfulltree((*dir)->lnk,lev+1,dev,&((*dir)->size),&((*dir)->err)); + (*dir)->child = unix_getfulltree((*dir)->lnk,lev+1,dev,&((*dir)->size),&((*dir)->err)); else { - if (strlen(d)+strlen((*dir)->lnk)+2 > pathsize) path=xrealloc(path,pathsize=(strlen(d)+strlen((*dir)->name)+1024)); + if (strlen(d)+strlen((*dir)->lnk)+2 > pathsize) path=xrealloc(path,pathsize=(strlen(d)+strlen((*dir)->lnk)+1024)); if (fflag && !strcmp(d,"/")) sprintf(path,"%s%s",d,(*dir)->lnk); else sprintf(path,"%s/%s",d,(*dir)->lnk); - (*dir)->child = getfulltree(path,lev+1,dev,&((*dir)->size),&((*dir)->err)); + (*dir)->child = unix_getfulltree(path,lev+1,dev,&((*dir)->size),&((*dir)->err)); diff --git a/unix.c b/unix.c index ca5f76f..9476307 100644 --- a/unix.c +++ b/unix.c -@@ -128,7 +128,7 @@ off_t unix_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -129,7 +129,7 @@ off_t unix_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) if (*(*dir)->lnk == '/') listdir((*dir)->lnk,dt,ft,lev+1,dev); else { @@ -142,7 +117,7 @@ index ca5f76f..9476307 100644 if (fflag && !strcmp(d,"/")) sprintf(path,"%s%s",d,(*dir)->lnk); else sprintf(path,"%s/%s",d,(*dir)->lnk); listdir(path,dt,ft,lev+1,dev); -@@ -161,7 +161,7 @@ off_t unix_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -162,7 +162,7 @@ off_t unix_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) { struct _info **dir; off_t size = 0; @@ -151,7 +126,7 @@ index ca5f76f..9476307 100644 dir = getfulltree(d, lev, dev, &size, &err); -@@ -169,6 +169,7 @@ off_t unix_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -170,6 +170,7 @@ off_t unix_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) r_listdir(dir, d, dt, ft, lev); @@ -163,7 +138,7 @@ diff --git a/xml.c b/xml.c index 32f3c0c..512eed7 100644 --- a/xml.c +++ b/xml.c -@@ -105,8 +105,7 @@ off_t xml_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -106,8 +106,7 @@ off_t xml_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) while(*dir) { if (!noindent) xml_indent(lev); @@ -173,7 +148,7 @@ index 32f3c0c..512eed7 100644 for(t=0;ifmt[t];t++) if (ifmt[t] == mt) break; fprintf(outfile,"<%s", ftype[t]); -@@ -144,7 +143,7 @@ off_t xml_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -145,7 +144,7 @@ off_t xml_listdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) if (*(*dir)->lnk == '/') listdir((*dir)->lnk,dt,ft,lev+1,dev); else { @@ -182,7 +157,7 @@ index 32f3c0c..512eed7 100644 if (fflag && !strcmp(d,"/")) sprintf(path,"%s%s",d,(*dir)->lnk); else sprintf(path,"%s/%s",d,(*dir)->lnk); listdir(path,dt,ft,lev+1,dev); -@@ -180,7 +179,7 @@ off_t xml_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -181,7 +180,7 @@ off_t xml_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) { struct _info **dir; off_t size = 0; @@ -191,7 +166,7 @@ index 32f3c0c..512eed7 100644 dir = getfulltree(d, lev, dev, &size, &err); -@@ -188,6 +187,7 @@ off_t xml_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) +@@ -189,6 +188,7 @@ off_t xml_rlistdir(char *d, int *dt, int *ft, u_long lev, dev_t dev) xmlr_listdir(dir, d, dt, ft, lev); @@ -199,7 +174,7 @@ index 32f3c0c..512eed7 100644 return size; } -@@ -210,8 +210,7 @@ void xmlr_listdir(struct _info **dir, char *d, int *dt, int *ft, u_long lev) +@@ -211,8 +211,7 @@ void xmlr_listdir(struct _info **dir, char *d, int *dt, int *ft, u_long lev) while(*dir) { if (!noindent) xml_indent(lev); diff --git a/tree.spec b/tree.spec index 9022c66..1699e1a 100644 --- a/tree.spec +++ b/tree.spec @@ -1,7 +1,7 @@ Summary: File system tree viewer Name: tree -Version: 1.7.0 -Release: 16%{?dist} +Version: 1.8.0 +Release: 1%{?dist} License: GPLv2+ URL: http://mama.indstate.edu/users/ice/tree/ Source: ftp://mama.indstate.edu/linux/tree/tree-%{version}.tgz @@ -54,6 +54,9 @@ chmod -x $RPM_BUILD_ROOT%{_mandir}/man1/tree.1 %doc README LICENSE %changelog +* Thu Dec 13 2018 Kamil Dudka - 1.8.0-1 +- update to the latest upstream release + * Wed Nov 07 2018 Kamil Dudka - 1.7.0-16 - fix programming mistakes detected by static analysis