Fixed computation of product size.
[BearSSL] / src / codec / pemdec.t0
index ba4a9e2..4ebf0dd 100644 (file)
@@ -24,7 +24,7 @@ preamble {
 
 #include "inner.h"
 
-#define CTX   ((br_pem_decoder_context *)((unsigned char *)t0ctx - offsetof(br_pem_decoder_context, cpu)))
+#define CTX   ((br_pem_decoder_context *)(void *)((unsigned char *)t0ctx - offsetof(br_pem_decoder_context, cpu)))
 
 /* see bearssl_pem.h */
 void
@@ -204,7 +204,9 @@ cc: write8 ( x -- ) {
 \ Flush the output buffer.
 cc: flush-buf ( -- ) {
        if (CTX->ptr > 0) {
-               CTX->dest(CTX->dest_ctx, CTX->buf, CTX->ptr);
+               if (CTX->dest) {
+                       CTX->dest(CTX->dest_ctx, CTX->buf, CTX->ptr);
+               }
                CTX->ptr = 0;
        }
 }