diff --git a/src/pd.tk b/src/pd.tk
index 8a72ab5f95606ab02c5b89ec3d26df78690fdf91..283d6eaa6c75e2ba9a4ba07f4b233c3e3543ba24 100644
--- a/src/pd.tk
+++ b/src/pd.tk
@@ -3840,7 +3840,8 @@ proc pdtk_canvas_saveas {name initfile initdir} {
     global pd_nt filetypes untitled_directory
     if { ! [file isdirectory $initdir]} {set initdir $::env(HOME)}
     set filename [tk_getSaveFile -initialfile $initfile -initialdir $initdir \
-					  -defaultextension .pd -filetypes $filetypes]
+					  -defaultextension .pd -filetypes $filetypes \
+					  -parent $name]
 
     if {$filename eq ""} return; # they clicked cancel