diff --git a/Lib/stdwin/anywin.py b/Lib/stdwin/anywin.py
index bb7e865..38ee869 100755
--- a/Lib/stdwin/anywin.py
+++ b/Lib/stdwin/anywin.py
@@ -3,11 +3,11 @@
 
 import dirwin
 import filewin
-import path
+import os
 
 def open(name):
 	print 'opening', name, '...'
-	if path.isdir(name):
+	if os.path.isdir(name):
 		w = dirwin.open(name)
 	else:
 		w = filewin.open(name)
diff --git a/Lib/stdwin/dirwin.py b/Lib/stdwin/dirwin.py
index beb5222..e8b0170 100755
--- a/Lib/stdwin/dirwin.py
+++ b/Lib/stdwin/dirwin.py
@@ -2,24 +2,24 @@
 
 # Directory windows, a subclass of listwin
 
+import os
 import gwin
 import listwin
 import anywin
-import path
 import dircache
 
 def action(w, string, i, detail):
 	(h, v), clicks, button, mask = detail
 	if clicks == 2:
-		name = path.join(w.name, string)
+		name = os.path.join(w.name, string)
 		try:
 			w2 = anywin.open(name)
 			w2.parent = w
-		except posix.error, why:
+		except os.error, why:
 			stdwin.message('Can\'t open ' + name + ': ' + why[1])
 
 def open(name):
-	name = path.join(name, '')
+	name = os.path.join(name, '')
 	list = dircache.opendir(name)[:]
 	list.sort()
 	dircache.annotate(name, list)
