diff --git a/src/modules/sprintf/sprintf.c b/src/modules/sprintf/sprintf.c
index 9b0ef5bf84a0e5a9c56f6429ed2196f2578d640c..56dda0711d4abf5cf5e4b7ab3ad8b6c4bb3a3b40 100644
--- a/src/modules/sprintf/sprintf.c
+++ b/src/modules/sprintf/sprintf.c
@@ -632,13 +632,13 @@ static string low_lpc_sprintf(char *format,
         l=1;
         if(fsp->width > 0) l=fsp->width;
 	fsp->b=(char *)alloca(l);
+	fsp->len=l;
 	GET_INT(tmp);
         while(--l>=0)
         {
           fsp->b[l]=tmp & 0xff;
           tmp>>=8;
         }
-	fsp->len=l;
 	break;
       }