Index: /trunk/source/lisp-kernel/x86-exceptions.c
===================================================================
--- /trunk/source/lisp-kernel/x86-exceptions.c	(revision 12807)
+++ /trunk/source/lisp-kernel/x86-exceptions.c	(revision 12808)
@@ -3640,7 +3640,14 @@
 
   if (nbytes) {
-    int err = munmap(base, nbytes);
-    if (err < 0)
-      Fatal("munmap in delete_watched_area: ", strerror(errno));
+    int err;
+
+/* can't use UnMapMemory() beacuse it only uses MEM_DECOMMIT */
+#ifdef WINDOWS
+    err = VirtualFree(base, nbytes, MEM_RELEASE);
+#else
+    err = munmap(base, nbytes);
+#endif
+    if (err != 0)
+      Fatal("munmap in delete_watched_area", "");
   }
 }
@@ -3715,7 +3722,7 @@
 
     /* move object to watched area */
-    bcopy(noderef, a->low, size);
+    memcpy(a->low, noderef, size);
     ProtectMemory(a->low, size);
-    bzero(noderef, size);
+    memset(noderef, 0, size);
     wp_update_references(tcr, old, new);
     check_all_areas(tcr);
