U8 **leaf_p;
U8 *leaf;
unsigned int i;
- void **tv_p = (void **) (st->tracking);
+ void **tv_p;
- assert(st);
- if (NULL == p) return FALSE;
+
+ if (NULL == p || NULL == st) return FALSE;
+ tv_p = (void **) (st->tracking);
TRY_TO_CATCH_SEGV {
const char c = *(const char *)p;
}
#!/usr/bin/perl -w
-use Test::More tests => 14;
+use Test::More tests => 15;
use strict;
use Devel::Size qw(size total_size);
+use Scalar::Util qw(weaken);
can_ok ('Devel::Size', qw/
size
cmp_ok (total_size(\&LARGE), '>', 8192,
'total_size for a constant includes the constant');
+
+{
+ my $a = [];
+ my $b = \$a;
+ weaken $b;
+ cmp_ok(total_size($a), '>', total_size([]),
+ 'making a weakref upgrades the target to PVMG and adds magic');
+}