Hello community,

here is the log from the commit of package bc for openSUSE:Factory checked in 
at 2012-09-17 13:47:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/bc (Old)
 and      /work/SRC/openSUSE:Factory/.bc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "bc", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/bc/bc.changes    2011-12-02 09:25:49.000000000 
+0100
+++ /work/SRC/openSUSE:Factory/.bc.new/bc.changes       2012-09-17 
13:47:48.000000000 +0200
@@ -1,0 +2,8 @@
+Thu May 31 12:56:27 UTC 2012 - [email protected]
+
+- update to upstream alpha 1.06.95 (2006-09-05), in use in other
+  major distros for quite a long time (Debian, Fedora, Ubuntu, ...)
+- add patches from Fedora
+- automake dependency removed
+
+-------------------------------------------------------------------

Old:
----
  bc-1.06-decl.diff
  bc-1.06-flex.diff
  bc-1.06-opt-expression.diff
  bc-1.06-strict-aliasing.diff
  bc-1.06.dif
  bc-1.06.tar.bz2
  bc-1.06_getopt.patch

New:
----
  bc-1.06-dc_ibase.patch
  bc-1.06.95-matlib.patch
  bc-1.06.95-memleak.patch
  bc-1.06.95-sigintmasking.patch
  bc-1.06.95.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ bc.spec ++++++
--- /var/tmp/diff_new_pack.3XTZm0/_old  2012-09-17 13:47:49.000000000 +0200
+++ /var/tmp/diff_new_pack.3XTZm0/_new  2012-09-17 13:47:49.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package bc
 #
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,23 +16,23 @@
 #
 
 
-
 Name:           bc
-BuildRequires:  automake bison ed flex readline-devel
+BuildRequires:  bison
+BuildRequires:  ed
+BuildRequires:  flex
+BuildRequires:  readline-devel
 Url:            ftp://ftp.gnu.org/pub/gnu/bc
-License:        GPL-2.0+
-Group:          Productivity/Scientific/Math
 PreReq:         %{install_info_prereq}
-Version:        1.06
+Version:        1.06.95
 Release:        0
 Summary:        GNU Command Line Calculator
-Source:         %{name}-%{version}.tar.bz2
-Patch:          %{name}-%{version}.dif
-Patch1:         %{name}-%{version}-flex.diff
-Patch2:         %name-1.06-decl.diff
-Patch3:         %name-1.06-strict-aliasing.diff
-Patch4:         %{name}-%{version}_getopt.patch
-Patch5:         %{name}-%{version}-opt-expression.diff
+License:        GPL-2.0+
+Group:          Productivity/Scientific/Math
+Source:         ftp://alpha.gnu.org/pub/gnu/bc/bc-%{version}.tar.bz2
+Patch1:         bc-1.06-dc_ibase.patch
+Patch2:         bc-1.06.95-memleak.patch
+Patch3:         bc-1.06.95-matlib.patch
+Patch4:         bc-1.06.95-sigintmasking.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
@@ -55,15 +55,12 @@
 
 %prep
 %setup -q
-%patch
-%patch1
-%patch2 -p1
-%patch3 -p1
-%patch4
-%patch5
+%patch1 -p1 -b .dc_ibase
+%patch2 -p1 -b .memleak
+%patch3 -p1 -b .matlib
+%patch4 -p1 -b .sigintmask
 
 %build
-autoreconf -fi
 ./configure CFLAGS="$RPM_OPT_FLAGS" \
             --with-readline \
             --prefix=/usr \

++++++ bc-1.06-dc_ibase.patch ++++++
--- bc-1.06/dc/numeric.c.dc_ibase       2007-08-22 08:37:57.000000000 +0200
+++ bc-1.06/dc/numeric.c        2007-08-22 08:37:40.000000000 +0200
@@ -285,6 +285,8 @@ dc_getnum DC_DECLARG((input, ibase, read
        int             digit;
        int             decimal;
        int             c;
+       int             c_buff = 0;
+       int             multi = 0;
 
        bc_init_num(&tmp);
        bc_init_num(&build);
@@ -302,6 +304,9 @@ dc_getnum DC_DECLARG((input, ibase, read
        }
        while (isspace(c))
                c = (*input)();
+       c_buff = (*input)();    
+       if (isdigit(c_buff) || ('A' <= c_buff && c_buff <= 'F') || c_buff == 
'.')
+                       multi = 1;              
        for (;;){
                if (isdigit(c))
                        digit = c - '0';
@@ -309,10 +314,15 @@ dc_getnum DC_DECLARG((input, ibase, read
                        digit = 10 + c - 'A';
                else
                        break;
-               c = (*input)();
+               digit = multi ? (digit >= ibase ? ibase -1 : digit) : digit;
                bc_int2num(&tmp, digit);
                bc_multiply(result, base, &result, 0);
                bc_add(result, tmp, &result, 0);
+               if (c_buff) {
+                       c = c_buff;
+                       c_buff = 0;
+               } else
+                       c = (*input)();
        }
        if (c == '.'){
                bc_free_num(&build);
@@ -321,13 +331,18 @@ dc_getnum DC_DECLARG((input, ibase, read
                build = bc_copy_num(_zero_);
                decimal = 0;
                for (;;){
-                       c = (*input)();
+                       if (c_buff) {
+                               c = c_buff;
+                               c_buff = 0;
+                       } else
+                               c = (*input)();
                        if (isdigit(c))
                                digit = c - '0';
                        else if ('A' <= c && c <= 'F')
                                digit = 10 + c - 'A';
                        else
                                break;
+                       digit = digit >= ibase ? ibase -1 : digit;
                        bc_int2num(&tmp, digit);
                        bc_multiply(build, base, &build, 0);
                        bc_add(build, tmp, &build, 0);
++++++ bc-1.06.95-matlib.patch ++++++
diff -urNp bc-1.06.95-orig/bc/storage.c bc-1.06.95/bc/storage.c
--- bc-1.06.95-orig/bc/storage.c        2006-09-05 04:39:31.000000000 +0200
+++ bc-1.06.95/bc/storage.c     2010-12-22 10:26:43.805250912 +0100
@@ -99,6 +99,7 @@ more_functions (VOID)
     {
       f = &functions[indx];
       f->f_defined = FALSE;
+      f->f_void = FALSE;
       f->f_body = (char *) bc_malloc (BC_START_SIZE);
       f->f_body_size = BC_START_SIZE;
       f->f_code_size = 0;
@@ -179,7 +180,7 @@ more_arrays ()
 
 
   /* Initialize the new elements. */
-  for (; indx < v_count; indx++)
+  for (; indx < a_count; indx++)
     arrays[indx] = NULL;
 
   /* Free the old elements. */
++++++ bc-1.06.95-memleak.patch ++++++
diff --git a/bc/bc.y b/bc/bc.y
index 14dc4be..bd91c38 100644
--- a/bc/bc.y
+++ b/bc/bc.y
@@ -569,6 +569,7 @@ expression          :  named_expression ASSIGN_OP
                                    generate (">");
                                  break;
                                }
+                             free($2);
                            }
                        | expression '+' expression
                            {
diff --git a/bc/util.c b/bc/util.c
index 30beaf9..26e2e85 100644
--- a/bc/util.c
+++ b/bc/util.c
@@ -602,8 +602,7 @@ lookup (name, namekind)
     case FUNCTDEF:
       if (id->f_name != 0)
        {
-         if (namekind != FUNCT)
-           free(name);
+         free(name);
          /* Check to see if we are redefining a math lib function. */ 
          if (use_math && namekind == FUNCTDEF && id->f_name <= 6)
            id->f_name = next_func++;
++++++ bc-1.06.95-sigintmasking.patch ++++++
Binary files bc-1.06.95-orig/dc/.dc.c.swp and bc-1.06.95/dc/.dc.c.swp differ
diff -urNp bc-1.06.95-orig/dc/eval.c bc-1.06.95/dc/eval.c
--- bc-1.06.95-orig/dc/eval.c   2006-06-04 13:04:40.000000000 +0200
+++ bc-1.06.95/dc/eval.c        2011-09-08 15:11:48.815060585 +0200
@@ -661,7 +661,9 @@ dc_evalfile DC_DECLARG((fp))
        int next_negcmp = 0;
        dc_data datum;
 
-       signal(SIGINT, dc_trap_interrupt);
+    /* Do not mask SIGINT when running from stdin */
+       if (fp != stdin)
+      signal(SIGINT, dc_trap_interrupt);
        stdin_lookahead = EOF;
        for (c=getc(fp); c!=EOF; c=peekc){
                peekc = getc(fp);
diff -urNp bc-1.06.95-orig/doc/dc.texi bc-1.06.95/doc/dc.texi
--- bc-1.06.95-orig/doc/dc.texi 2006-06-11 10:15:54.000000000 +0200
+++ bc-1.06.95/doc/dc.texi      2011-09-08 15:09:37.032059798 +0200
@@ -126,6 +126,8 @@ To exit, use @samp{q}.
 (or whatever other keystroke your system uses to generate a @code{SIGINT})
 does not exit;
 it is used to abort macros that are looping, etc.
+This is not true if running on stdin to prevent accidental user confusion
+about @kbd{C-c} unfunctionality.
 
 A reverse-polish calculator stores numbers on a stack.
 Entering a number pushes it on the stack.
++++++ bc-1.06.tar.bz2 -> bc-1.06.95.tar.bz2 ++++++
++++ 39257 lines of diff (skipped)

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to