diff --git a/fxjs/cjs_publicmethods.cpp b/fxjs/cjs_publicmethods.cpp
index 1811321..5f0fdfd 100644
--- a/fxjs/cjs_publicmethods.cpp
+++ b/fxjs/cjs_publicmethods.cpp
@@ -783,11 +783,6 @@
   if (!pEvent->m_pValue)
     return CJS_Result::Failure(JSMessage::kBadObjectError);
 
-  WideString& Value = pEvent->Value();
-  ByteString strValue = StrTrim(Value.ToDefANSI());
-  if (strValue.IsEmpty())
-    return CJS_Result::Success();
-
   // Acrobat will accept this. Anything larger causes it to throw an error.
   static constexpr int kMaxSepStyle = 49;
 
@@ -798,6 +793,11 @@
 
   iSepStyle = ValidStyleOrZero(iSepStyle);
 
+  WideString& Value = pEvent->Value();
+  ByteString strValue = StrTrim(Value.ToDefANSI());
+  if (strValue.IsEmpty())
+    strValue = "0";
+
   // for processing decimal places
   double dValue = atof(strValue.c_str());
   dValue *= 100;
diff --git a/testing/resources/javascript/public_methods_expected.txt b/testing/resources/javascript/public_methods_expected.txt
index 269d1da..6131da8 100644
--- a/testing/resources/javascript/public_methods_expected.txt
+++ b/testing/resources/javascript/public_methods_expected.txt
@@ -66,9 +66,9 @@
 Alert: PASS: AFPercent_Format(1, 0, 0) = -512.3%
 Alert: FAIL: AFPercent_Format(1, 0, 1) = -512.3%, expected %-512.3 
 Alert: FAIL: AFPercent_Format(1, 0, 2) = -512.3%, expected %-512.3 
-Alert: FAIL: AFPercent_Format(10, 0, 0) = , expected 0.0000000000% 
-Alert: FAIL: AFPercent_Format(10, 0, 1) = , expected %0.0000000000 
-Alert: FAIL: AFPercent_Format(10, 0, 2) = , expected %0.0000000000 
+Alert: PASS: AFPercent_Format(10, 0, 0) = 0.0000000000%
+Alert: FAIL: AFPercent_Format(10, 0, 1) = 0.0000000000%, expected %0.0000000000 
+Alert: FAIL: AFPercent_Format(10, 0, 2) = 0.0000000000%, expected %0.0000000000 
 Alert: PASS: AFPercent_Format(-3, 0) threw AFPercent_Format: Incorrect parameter value.
 Alert: PASS: AFPercent_Format(-3, 1) threw AFPercent_Format: Incorrect parameter value.
 Alert: PASS: AFPercent_Format(-1, 3) threw AFPercent_Format: Incorrect parameter value.
@@ -76,26 +76,26 @@
 Alert: PASS: AFPercent_Format(0, -1) threw AFPercent_Format: Incorrect parameter value.
 Alert: PASS: AFPercent_Format(0, 50) threw AFPercent_Format: Incorrect parameter value.
 Alert: PASS: AFPercent_Format(0, 51) threw AFPercent_Format: Incorrect parameter value.
-Alert: FAIL: AFPercent_Format(1, 0) = , expected 0.0% 
-Alert: FAIL: AFPercent_Format(1, 1) = , expected 0.0% 
-Alert: FAIL: AFPercent_Format(1, 2) = , expected 0,0% 
-Alert: FAIL: AFPercent_Format(1, 3) = , expected 0,0% 
-Alert: FAIL: AFPercent_Format(1, 4) = , expected 0.0% 
-Alert: FAIL: AFPercent_Format(2, 0) = , expected 0.00% 
-Alert: FAIL: AFPercent_Format(2, 1) = , expected 0.00% 
-Alert: FAIL: AFPercent_Format(2, 2) = , expected 0,00% 
-Alert: FAIL: AFPercent_Format(2, 3) = , expected 0,00% 
-Alert: FAIL: AFPercent_Format(2, 4) = , expected 0.00% 
-Alert: FAIL: AFPercent_Format(3, 0) = , expected 0.000% 
-Alert: FAIL: AFPercent_Format(3, 1) = , expected 0.000% 
-Alert: FAIL: AFPercent_Format(3, 2) = , expected 0,000% 
-Alert: FAIL: AFPercent_Format(3, 3) = , expected 0,000% 
-Alert: FAIL: AFPercent_Format(3, 4) = , expected 0.000% 
-Alert: FAIL: AFPercent_Format(10, 0) = , expected 0.0000000000% 
-Alert: FAIL: AFPercent_Format(10, 1) = , expected 0.0000000000% 
-Alert: FAIL: AFPercent_Format(10, 2) = , expected 0,0000000000% 
-Alert: FAIL: AFPercent_Format(10, 3) = , expected 0,0000000000% 
-Alert: FAIL: AFPercent_Format(10, 4) = , expected 0.0000000000% 
+Alert: PASS: AFPercent_Format(1, 0) = 0.0%
+Alert: PASS: AFPercent_Format(1, 1) = 0.0%
+Alert: PASS: AFPercent_Format(1, 2) = 0,0%
+Alert: PASS: AFPercent_Format(1, 3) = 0,0%
+Alert: PASS: AFPercent_Format(1, 4) = 0.0%
+Alert: PASS: AFPercent_Format(2, 0) = 0.00%
+Alert: PASS: AFPercent_Format(2, 1) = 0.00%
+Alert: PASS: AFPercent_Format(2, 2) = 0,00%
+Alert: PASS: AFPercent_Format(2, 3) = 0,00%
+Alert: PASS: AFPercent_Format(2, 4) = 0.00%
+Alert: PASS: AFPercent_Format(3, 0) = 0.000%
+Alert: PASS: AFPercent_Format(3, 1) = 0.000%
+Alert: PASS: AFPercent_Format(3, 2) = 0,000%
+Alert: PASS: AFPercent_Format(3, 3) = 0,000%
+Alert: PASS: AFPercent_Format(3, 4) = 0.000%
+Alert: PASS: AFPercent_Format(10, 0) = 0.0000000000%
+Alert: PASS: AFPercent_Format(10, 1) = 0.0000000000%
+Alert: PASS: AFPercent_Format(10, 2) = 0,0000000000%
+Alert: PASS: AFPercent_Format(10, 3) = 0,0000000000%
+Alert: PASS: AFPercent_Format(10, 4) = 0.0000000000%
 Alert: PASS: AFPercent_Format(1, 0) = 0.0%
 Alert: PASS: AFPercent_Format(1, 1) = 0.0%
 Alert: PASS: AFPercent_Format(1, 2) = 0,0%
