* Modules/{Setup.in,Makefile.pre.in}: renamed some modules to
	shorter names (dropped the "module" from the name): sunaudiodev,
	imgformat, audioop, imageop, imgfile

	* Modules/stropmodule.c (strop_rindex): make rindex('abc', '') do
	the right thing (i.e. return 3 instead of 0)

	* Modules/socketmodule.c: disabled allowbroadcast() socket method
diff --git a/Modules/Makefile.pre.in b/Modules/Makefile.pre.in
index 0b4fa5b..7ef0b0b 100644
--- a/Modules/Makefile.pre.in
+++ b/Modules/Makefile.pre.in
@@ -98,7 +98,7 @@
 
 almodule.o: almodule.c
 arraymodule.o: arraymodule.c
-audioopmodule.o: audioopmodule.c
+audioop.o: audioop.c
 cdmodule.o: cdmodule.c
 clmodule.o: clmodule.c
 dbmmodule.o: dbmmodule.c
@@ -106,8 +106,8 @@
 flmodule.o: flmodule.c
 fmmodule.o: fmmodule.c
 glmodule.o: glmodule.c
-imageopmodule.o: imageopmodule.c
-imgfilemodule.o: imgfilemodule.c
+imageop.o: imageop.c
+imgfile.o: imgfile.c
 mathmodule.o: mathmodule.c
 md5c.o: md5c.c
 md5module.o: md5module.c
@@ -126,7 +126,7 @@
 stdwinmodule.o: stdwinmodule.c
 stropmodule.o: stropmodule.c
 structmodule.o: structmodule.c
-sunaudiodevmodule.o: sunaudiodevmodule.c
+sunaudiodev.o: sunaudiodev.c
 svmodule.o: svmodule.c
 threadmodule.o: threadmodule.c
 timemodule.o: timemodule.c
diff --git a/Modules/Setup.in b/Modules/Setup.in
index f7b5bace..171755c 100644
--- a/Modules/Setup.in
+++ b/Modules/Setup.in
@@ -93,8 +93,8 @@
 # Multimedia modules -- on by default.
 # These represent audio samples or images as strings
 
-audioop audioopmodule.o # Operations on audio samples
-imageop imageopmodule.o # Operations on images
+audioop audioop.o	# Operations on audio samples
+imageop imageop.o	# Operations on images
 rgbimg rgbimgmodule.o   # Read SGI RGB image files (but coded portably)
 
 
@@ -148,7 +148,7 @@
 #cl clmodule.o -lcl		# -lawareaudio
 #fm fmmodule.o -lfm_s -lgl_s
 #gl glmodule.o -lgl_s -lX11_s
-#imgfile imgfilemodule.o -limage -lgutil
+#imgfile imgfile.o -limage -lgutil
 #sgi sgimodule.o
 #sv svmodule.o yuvconvert.o -lsvideo -lXext -lX11_s
 
@@ -165,7 +165,7 @@
 
 # SunOS specific modules -- off by default
 
-# sunaudiodev sunaudiodevmodule.o
+# sunaudiodev sunaudiodev.o
 
 
 # Thread module -- works on SGI IRIX and on SunOS 5.x (SOLARIS) only.
@@ -196,7 +196,7 @@
 
 
 # Jack Jansen's imgformat module
-# imgformat imgformatmodule.o
+# imgformat imgformat.o
 
 
 # Lance Ellinghouse's syslog module
diff --git a/Modules/regexpr.c b/Modules/regexpr.c
index f877558..841f500 100644
--- a/Modules/regexpr.c
+++ b/Modules/regexpr.c
@@ -1251,6 +1251,11 @@
 		goto error;
 	      failure_stack_start = (struct failure_point *)
 		malloc(MAX_FAILURES * sizeof(*failure_stack_start));
+	      if (failure_stack_start == NULL)
+	        {
+		  failure_stack_start = initial_failure_stack;
+		  goto error;
+		}
 	      failure_stack_end = failure_stack_start + MAX_FAILURES;
 	      memcpy((char *)failure_stack_start, (char *)initial_failure_stack,
 		     INITIAL_FAILURES * sizeof(*failure_stack_start));
@@ -1529,6 +1534,8 @@
       /* the buffer will be allocated automatically */
       re_comp_buf.fastmap = malloc(256);
       re_comp_buf.translate = NULL;
+      if (re_comp_buf.fastmap == NULL)
+	return "Out of memory";
     }
   return re_compile_pattern(s, strlen(s), &re_comp_buf);
 }
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 32f22db..6340fbc 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -380,6 +380,7 @@
 }
 
 
+#if 0
 /* s.allowbroadcast() method */
 /* XXX obsolete -- will disappear in next release */
 
@@ -399,6 +400,7 @@
 	INCREF(None);
 	return None;
 }
+#endif
 
 
 /* s.setsockopt() method.
@@ -796,7 +798,9 @@
 
 static struct methodlist sock_methods[] = {
 	{"accept",		(method)sock_accept},
+#if 0
 	{"allowbroadcast",	(method)sock_allowbroadcast},
+#endif
 	{"setsockopt",		(method)sock_setsockopt},
 	{"getsockopt",		(method)sock_getsockopt},
 	{"bind",		(method)sock_bind},
diff --git a/Modules/stropmodule.c b/Modules/stropmodule.c
index c980272..0fd09b0 100644
--- a/Modules/stropmodule.c
+++ b/Modules/stropmodule.c
@@ -256,7 +256,7 @@
 	}
 
 	if (n == 0)
-		return newintobject((long)i);
+		return newintobject((long)len);
 
 	for (j = len-n; j >= i; --j)
 		if (s[j] == sub[0] &&