Hi, your patch uses IsBadReadPtr(), but that function is deprecated in favor of using an exception handler. See http://www.winehq.org/pipermail/wine-devel/2006-April/046560.html Here's an example (sorry it's a messy one, it's just the first one google found): http://www.winehq.org/pipermail/wine-patches/2004-November/013791.html
Please try recoding using that approach.
If you have trouble getting this patch in, you might want to file a bug at http://bugs.winehq.org for your problem and link to your patch; that will record the problem so somebody else can pick it up later. - Dan