diff -ruN ruby-1.8.4.orig/re.c ruby-1.8.4/re.c --- ruby-1.8.4.orig/re.c 2005-12-13 12:27:51.000000000 +0900 +++ ruby-1.8.4/re.c 2006-07-19 18:07:59.000000000 +0900 @@ -1332,6 +1332,8 @@ { struct RRegexp *re = RREGEXP(obj); + if (!OBJ_TAINTED(obj) && rb_safe_level() >= 4) + rb_raise(rb_eSecurityError, "Insecure: can't modify regexp"); if (re->ptr) re_free_pattern(re->ptr); if (re->str) free(re->str); re->ptr = 0;