Return-Path: Delivered-To: apmail-apr-commits-archive@www.apache.org Received: (qmail 4538 invoked from network); 26 Apr 2007 13:11:03 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 26 Apr 2007 13:11:03 -0000 Received: (qmail 70364 invoked by uid 500); 26 Apr 2007 13:11:09 -0000 Delivered-To: apmail-apr-commits-archive@apr.apache.org Received: (qmail 70326 invoked by uid 500); 26 Apr 2007 13:11:09 -0000 Mailing-List: contact commits-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: Reply-To: dev@apr.apache.org List-Id: Delivered-To: mailing list commits@apr.apache.org Received: (qmail 70315 invoked by uid 99); 26 Apr 2007 13:11:09 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Apr 2007 06:11:09 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Apr 2007 06:11:02 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id D186D1A9838; Thu, 26 Apr 2007 06:10:41 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r532733 - in /apr/apr/trunk: strings/apr_snprintf.c test/testfmt.c Date: Thu, 26 Apr 2007 13:10:36 -0000 To: commits@apr.apache.org From: jorton@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20070426131041.D186D1A9838@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jorton Date: Thu Apr 26 06:10:34 2007 New Revision: 532733 URL: http://svn.apache.org/viewvc?view=rev&rev=532733 Log: * strings/apr_snprintf.c (conv_10_quad): Fix formatting of unsigned integers between 2^63 and 2^64 on 32-bit platforms. * test/testfmt.c (more_int64_fmts): Test an even bigger unsigned int64. Submitted by: Wynn Wilkes PR: 42250 Modified: apr/apr/trunk/strings/apr_snprintf.c apr/apr/trunk/test/testfmt.c Modified: apr/apr/trunk/strings/apr_snprintf.c URL: http://svn.apache.org/viewvc/apr/apr/trunk/strings/apr_snprintf.c?view=diff&rev=532733&r1=532732&r2=532733 ============================================================================== --- apr/apr/trunk/strings/apr_snprintf.c (original) +++ apr/apr/trunk/strings/apr_snprintf.c Thu Apr 26 06:10:34 2007 @@ -397,7 +397,7 @@ * number against the largest long value it can be. If <=, we * punt to the quicker version. */ - if ((num <= ULONG_MAX && is_unsigned) + if (((u_widest_int)num <= (u_widest_int)ULONG_MAX && is_unsigned) || (num <= LONG_MAX && num >= LONG_MIN && !is_unsigned)) return(conv_10( (wide_int)num, is_unsigned, is_negative, buf_end, len)); Modified: apr/apr/trunk/test/testfmt.c URL: http://svn.apache.org/viewvc/apr/apr/trunk/test/testfmt.c?view=diff&rev=532733&r1=532732&r2=532733 ============================================================================== --- apr/apr/trunk/test/testfmt.c (original) +++ apr/apr/trunk/test/testfmt.c Thu Apr 26 06:10:34 2007 @@ -102,7 +102,7 @@ apr_int64_t i = APR_INT64_C(-42); apr_int64_t ibig = APR_INT64_C(-314159265358979323); apr_uint64_t ui = APR_UINT64_C(42); - apr_uint64_t big = APR_UINT64_C(3141592653589793238); + apr_uint64_t big = APR_UINT64_C(10267677267010969076); apr_snprintf(buf, sizeof buf, "%" APR_INT64_T_FMT, i); ABTS_STR_EQUAL(tc, buf, "-42"); @@ -111,7 +111,7 @@ ABTS_STR_EQUAL(tc, buf, "42"); apr_snprintf(buf, sizeof buf, "%" APR_UINT64_T_FMT, big); - ABTS_STR_EQUAL(tc, buf, "3141592653589793238"); + ABTS_STR_EQUAL(tc, "10267677267010969076", buf); apr_snprintf(buf, sizeof buf, "%" APR_INT64_T_FMT, ibig); ABTS_STR_EQUAL(tc, buf, "-314159265358979323");