Change 29521 by [EMAIL PROTECTED] on 2006/12/11 21:15:06

        Assert that BmRARE() BmPREVIOUS() and BmUSEFUL() are only called on
        valid PVBMs.

Affected files ...

... //depot/perl/sv.h#292 edit

Differences ...

==== //depot/perl/sv.h#292 (text) ====
Index: perl/sv.h
--- perl/sv.h#291~29518~        2006-12-11 10:26:31.000000000 -0800
+++ perl/sv.h   2006-12-11 13:15:06.000000000 -0800
@@ -1314,17 +1314,20 @@
 #  define BmRARE(sv)                                                   \
        (*({ SV *const _svi = (SV *) (sv);                              \
            assert(SvTYPE(_svi) == SVt_PVBM);                           \
+           assert(SvVALID(_svi));                                      \
            &(((XPVBM*) SvANY(_svi))->xbm_rare);                        \
         }))
 #  define BmUSEFUL(sv)                                                 \
        (*({ SV *const _svi = (SV *) (sv);                              \
            assert(SvTYPE(_svi) == SVt_PVBM);                           \
+           assert(SvVALID(_svi));                                      \
            assert(!SvIOK(_svi));                                       \
            &(((XPVBM*) SvANY(_svi))->xiv_u.xivu_i32);                  \
         }))
 #  define BmPREVIOUS(sv)                                               \
        (*({ SV *const _svi = (SV *) (sv);                              \
            assert(SvTYPE(_svi) == SVt_PVBM);                           \
+           assert(SvVALID(_svi));                                      \
            &(((XPVBM*) SvANY(_svi))->xbm_previous);                    \
         }))
 #else
End of Patch.

Reply via email to