diff --git a/manifest b/manifest
index 04c30af..e7519c3 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\sthe\sprintf()\sSQL\sfunction.
-D 2013-12-17T15:03:06.814
+C Fix\sthe\sformatting\sof\s%c\sin\sthe\sprintf()\sSQL\sfunction.
+D 2013-12-17T15:58:42.950
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 2ef13430cd359f7b361bb863504e227b25cc7f81
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -215,7 +215,7 @@
 F src/pcache1.c 57fee9a9a617218f5037afbbe49b09da65bde56b
 F src/pragma.c 5ab7279d132143feb77f773688a24ab05da75fd7
 F src/prepare.c 359d1a1e9c9bd4488e4dd3a1aaaf2d2ebb9bb768
-F src/printf.c 0c0cb58e43410d6237afe0f2751f265fc62eac59
+F src/printf.c 85d07756e45d7496d19439dcae3e6e9e0090f269
 F src/random.c 0b2dbc37fdfbfa6bd455b091dfcef5bdb32dba68
 F src/resolve.c 7eda9097b29fcf3d2b42fdc17d1de672134e09b6
 F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0
@@ -739,7 +739,7 @@
 F test/pragma.test e882183ecd21d064cec5c7aaea174fbd36293429
 F test/pragma2.test aea7b3d82c76034a2df2b38a13745172ddc0bc13
 F test/printf.test ec9870c4dce8686a37818e0bf1aba6e6a1863552
-F test/printf2.test 7b1c2c27826702723ad2b1fcd92bce2ffc9f45f3
+F test/printf2.test 2f0978059768bb039d3ee09466bdcd06fc7a6a86
 F test/progress.test a282973d1d17f08071bc58a77d6b80f2a81c354d
 F test/ptrchng.test ef1aa72d6cf35a2bbd0869a649b744e9d84977fc
 F test/queryonly.test 5f653159e0f552f0552d43259890c1089391dcca
@@ -1147,10 +1147,7 @@
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
 F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
-P 5716fc2341ddd8cf64139e7168597f864da4e10b
-R 2b8d4659fa3fad9afbe93191f7aa6089
-T *branch * printf-sql-function
-T *sym-printf-sql-function *
-T -sym-trunk *
+P 6db7052eeefafdbf26b3153bc38600fecfb53ae6
+R 2f73ea36e182ebaad881490b3d78bb71
 U drh
-Z 77c6ba366806353f9c00efecee393357
+Z 671b11d5131d6faea51d8a864c8026f9
diff --git a/manifest.uuid b/manifest.uuid
index ce69d4e..56747e8 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-6db7052eeefafdbf26b3153bc38600fecfb53ae6
\ No newline at end of file
+3375571a5e267744c19a7c310840256cec57a242
\ No newline at end of file
diff --git a/src/printf.c b/src/printf.c
index da11881..8cfa542 100644
--- a/src/printf.c
+++ b/src/printf.c
@@ -606,7 +606,9 @@
 #endif /* !defined(SQLITE_OMIT_FLOATING_POINT) */
         break;
       case etSIZE:
-        if( !bArgList ) *(va_arg(ap,int*)) = pAccum->nChar;
+        if( !bArgList ){
+          *(va_arg(ap,int*)) = pAccum->nChar;
+        }
         length = width = 0;
         break;
       case etPERCENT:
@@ -616,7 +618,8 @@
         break;
       case etCHARX:
         if( bArgList ){
-          c = (int)getIntArg(pArgList);
+          bufpt = getTextArg(pArgList);
+          c = bufpt ? bufpt[0] : 0;
         }else{
           c = va_arg(ap,int);
         }
diff --git a/test/printf2.test b/test/printf2.test
index 6a017f1..15babcf 100644
--- a/test/printf2.test
+++ b/test/printf2.test
@@ -51,6 +51,9 @@
 do_execsql_test printf2-1.12 {
   SELECT printf('%.*z',5,'abcdefghijklmnop');
 } {abcde}
+do_execsql_test printf2-1.13 {
+  SELECT printf('%c','abcdefghijklmnop');
+} {a}
 
 
 finish_test
