os/persistentdata/persistentstorage/sqlite3api/TEST/TCL/tcldistribution/compat/fixstrtod.c
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 /* 
     2  * fixstrtod.c --
     3  *
     4  *	Source code for the "fixstrtod" procedure.  This procedure is
     5  *	used in place of strtod under Solaris 2.4, in order to fix
     6  *	a bug where the "end" pointer gets set incorrectly.
     7  *
     8  * Copyright (c) 1995 Sun Microsystems, Inc.
     9  *
    10  * See the file "license.terms" for information on usage and redistribution
    11  * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
    12  *
    13  * RCS: @(#) $Id: fixstrtod.c,v 1.2 1998/09/14 18:39:44 stanton Exp $
    14  */
    15 
    16 #include <stdio.h>
    17 
    18 #undef strtod
    19 
    20 /*
    21  * Declare strtod explicitly rather than including stdlib.h, since in
    22  * somes systems (e.g. SunOS 4.1.4) stdlib.h doesn't declare strtod.
    23  */
    24 
    25 extern double strtod();
    26 
    27 double
    28 fixstrtod(string, endPtr)
    29     char *string;
    30     char **endPtr;
    31 {
    32     double d;
    33     d = strtod(string, endPtr);
    34     if ((endPtr != NULL) && (*endPtr != string) && ((*endPtr)[-1] == 0)) {
    35 	*endPtr -= 1;
    36     }
    37     return d;
    38 }