Index: NSDecimal.m
===================================================================
--- NSDecimal.m	(revision 37216)
+++ NSDecimal.m	(working copy)
@@ -264,7 +264,8 @@
 
   if (result->length <= l)
     return;
-  else if (l <= 0)
+// PB:  else if (l <= 0)
+  else if (l < 0)
     {
       result->length = 0;
       result->exponent = 0;
@@ -276,6 +277,22 @@
       int c, n;
       BOOL up;
 
+// PB: start
+  if (l == 0)
+  {
+      int x;
+	  
+ 	  x = result->length;
+      result->length += 1;
+	  l += 1;
+	  while(x > 0){
+	    result->cMantissa[x] = result->cMantissa[x-1];
+		x--;
+	  }
+	  result->cMantissa[0]=0;
+  }
+// PB: end
+
       // Adjust length and exponent
       result->exponent += result->length - l;
       result->length = l;
