summaryrefslogtreecommitdiff
path: root/gc.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-05-25 04:58:02 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-05-25 04:58:02 +0000
commit45c61f40b23b14e97428206e1b813eb813526e6f (patch)
treebbffa6043ed1e8b6a501d23c3b4874ae3390ddd8 /gc.c
parent369fe1e8394b494c78d56aedfe6b0b809d7d1c10 (diff)
remove unused variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/gc.c b/gc.c
index 8984dbbdc4..6579b44858 100644
--- a/gc.c
+++ b/gc.c
@@ -668,11 +668,12 @@ obj_free(obj)
if (RANY(obj)->as.array.ptr) free(RANY(obj)->as.array.ptr);
break;
case T_HASH:
- st_free_table(RANY(obj)->as.hash.tbl);
+ if (RANY(obj)->as.hash.tbl)
+ st_free_table(RANY(obj)->as.hash.tbl);
break;
case T_REGEXP:
- reg_free(RANY(obj)->as.regexp.ptr);
- free(RANY(obj)->as.regexp.str);
+ if (RANY(obj)->as.regexp.ptr) reg_free(RANY(obj)->as.regexp.ptr);
+ if (RANY(obj)->as.regexp.str) free(RANY(obj)->as.regexp.str);
break;
case T_DATA:
if (DATA_PTR(obj)) {
@@ -688,12 +689,16 @@ obj_free(obj)
}
break;
case T_MATCH:
- re_free_registers(RANY(obj)->as.match.regs);
- free(RANY(obj)->as.match.regs);
+ if (RANY(obj)->as.match.regs)
+ re_free_registers(RANY(obj)->as.match.regs);
+ if (RANY(obj)->as.match.regs)
+ free(RANY(obj)->as.match.regs);
break;
case T_FILE:
- io_fptr_finalize(RANY(obj)->as.file.fptr);
- free(RANY(obj)->as.file.fptr);
+ if (RANY(obj)->as.file.fptr) {
+ io_fptr_finalize(RANY(obj)->as.file.fptr);
+ free(RANY(obj)->as.file.fptr);
+ }
break;
case T_ICLASS:
/* iClass shares table with the module */
@@ -723,7 +728,8 @@ obj_free(obj)
break;
case T_STRUCT:
- free(RANY(obj)->as.rstruct.ptr);
+ if (RANY(obj)->as.rstruct.ptr)
+ free(RANY(obj)->as.rstruct.ptr);
break;
default: