Package: libmdbtools
Version: 0.5.99.0.6pre1.0.20051109-1
Severity: important
Tags: patch


  Hello !

  The function floor_log10 fails to check if the argument is infinite or not, 
which causes 
infinite recursion in case the database contains some infinite floats. I joined 
a simple fix 
that does the job. 

  I set the severity to important since it completely renders the package 
unusable for me 
(nearly all my databases contain infinite floats).

  Thanks for considering this report !

        Vincent Fourmond


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.11
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages libmdbtools depends on:
ii  libc6                         2.3.5-12   GNU C Library: Shared libraries an
ii  libglib2.0-0                  2.8.6-1    The GLib library of C routines
ii  odbcinst1debian1              2.2.11-9   Support library and helper program

libmdbtools recommends no packages.

-- no debconf information
--- mdbtools-0.5.99.0.6pre1.0.20051109.old/src/libmdb/data.c    2005-04-09 
13:17:56.000000000 +0200
+++ mdbtools-0.5.99.0.6pre1.0.20051109/src/libmdb/data.c        2006-02-03 
10:24:19.000000000 +0100
@@ -776,7 +776,7 @@
        if (f < 0.0)
                f = -f;
        
-       if ((f == 0.0) || (f == 1.0)) {
+       if ((f == 0.0) || (f == 1.0) || isinf(f)) {
                return 0;
        } else if (f < 1.0) {
                if (is_single) {

Reply via email to