In your "patch" you used the following code
if ( (unsigned)size > 1000000 ) Perl_croak(aTHX_ "Bugger!\n")
I noticed that the author had a CROAK macro and wondered why you opted for the Perl_croak and what the difference was.
/** Storable.xs 1.0.13 **/
#define CROAK(x) do { cxt->s_dirty = 1; croak x; } while (0)
/** Storable.xs 2.13 **/
#define CROAK(x) STMT_START { cxt->s_dirty = 1; croak x; } STMT
+_END
I understand that the
cxt->s_dirty is used to let Storable reuse the memory next time around, just wondering what the difference between
croak and
Perl_croak is.