Fix base64_decode() to return and check length correctly
diff --git a/library/base64.c b/library/base64.c
index 06305bb..1364713 100644
--- a/library/base64.c
+++ b/library/base64.c
@@ -162,6 +162,7 @@
         return( 0 );
 
     n = ((n * 6) + 7) >> 3;
+    n -= j;
 
     if( *dlen < n )
     {