printing zeroes in arcs


git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@199 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/skeletons/OBJECT_IDENTIFIER.c b/skeletons/OBJECT_IDENTIFIER.c
index 46191bc..4e6270d 100644
--- a/skeletons/OBJECT_IDENTIFIER.c
+++ b/skeletons/OBJECT_IDENTIFIER.c
@@ -225,12 +225,17 @@
 			&accum, sizeof(accum)))
 		return -1;
 
-	/* Fill the scratch buffer in reverse. */
-	p = scratch + sizeof(scratch);
-	for(; accum; accum /= 10)
-		*(--p) = (char)(accum % 10) + 0x30;
+	if(accum) {
+		/* Fill the scratch buffer in reverse. */
+		p = scratch + sizeof(scratch);
+		for(; accum; accum /= 10)
+			*(--p) = (char)(accum % 10) + 0x30;
 
-	return cb(p, sizeof(scratch) - (p - scratch), app_key);
+		return cb(p, sizeof(scratch) - (p - scratch), app_key);
+	} else {
+		*scratch = 0x30;
+		return cb(scratch, 1, app_key);
+	}
 }
 
 int