Handle sizes for PVGVs in sv_size() only.
Nicholas Clark [Sun, 24 Apr 2011 20:39:18 +0000 (21:39 +0100)]
Previously the logic was duplicated in total_size().

Size.xs

diff --git a/Size.xs b/Size.xs
index 2eab9af..8236ca6 100644 (file)
--- a/Size.xs
+++ b/Size.xs
@@ -845,27 +845,6 @@ CODE:
       }
       TAG;break;
 
-    case SVt_PVGV: TAG;
-      dbg_printf(("# Found type GV\n"));
-      if(!isGV_with_GP(thing))
-         break;
-      /* Run through all the pieces and push the ones with bits */
-      if (GvSV(thing)) {
-        av_push(pending_array, (SV *)GvSV(thing));
-      }
-      if (GvFORM(thing)) {
-        av_push(pending_array, (SV *)GvFORM(thing));
-      }
-      if (GvAV(thing)) {
-        av_push(pending_array, (SV *)GvAV(thing));
-      }
-      if (GvHV(thing)) {
-        av_push(pending_array, (SV *)GvHV(thing));
-      }
-      if (GvCV(thing)) {
-        av_push(pending_array, (SV *)GvCV(thing));
-      }
-      TAG;break;
     default:
       TAG;break;
       }