]> granicus.if.org Git - curl/commitdiff
made %llu work for printing unsigned long longs, added the generic curl source
authorDaniel Stenberg <daniel@haxx.se>
Mon, 30 Jun 2008 12:58:15 +0000 (12:58 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 30 Jun 2008 12:58:15 +0000 (12:58 +0000)
header

lib/mprintf.c

index bba1a6481f2469ad1947a7bc0e1675fe8c278843..25a4196ae7b44fe42f7874f435fd906294f2613c 100644 (file)
@@ -1,17 +1,24 @@
-/****************************************************************************
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
  *
- * $Id$
+ * Copyright (C) 1999 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at http://curl.haxx.se/docs/copyright.html.
  *
- *************************************************************************
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
  *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
  *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
- * MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND
- * CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER.
+ * $Id$
  *
  * Purpose:
  *  A merge of Bjorn Reese's format() function and Daniel's dsprintf()
@@ -29,7 +36,6 @@
  * page at http://daniel.haxx.se/trio/
  */
 
-
 #include "setup.h"
 #include <stdio.h>
 #include <stdlib.h>
@@ -559,10 +565,12 @@ static long dprintf_Pass1(const char *format, va_stack_t *vto, char **endpos,
           vto[i].data.lnum = va_arg(arglist, LONG_LONG);
         else
 #endif
+        {
           if(vto[i].flags & FLAGS_LONG)
             vto[i].data.num = va_arg(arglist, long);
-        else
-          vto[i].data.num = va_arg(arglist, int);
+          else
+            vto[i].data.num = va_arg(arglist, int);
+        }
         break;
 
       case FORMAT_DOUBLE:
@@ -700,7 +708,12 @@ static int dprintf_formatf(
 
     switch (p->type) {
     case FORMAT_INT:
-      num = p->data.num;
+#ifdef ENABLE_64BIT
+      if(p->flags & FLAGS_LONGLONG)
+        num = p->data.lnum;
+      else
+#endif
+        num = p->data.num;
       if(p->flags & FLAGS_CHAR) {
         /* Character.  */
         if(!(p->flags & FLAGS_LEFT))