diff --git a/pd/extra/pd~/pd~.c b/pd/extra/pd~/pd~.c
index 8a1f5c39820e745b5d214a47af0b68cc73455c3e..74fcf89c4bf86ca67614dd090efe9ba85e613ecc 100644
--- a/pd/extra/pd~/pd~.c
+++ b/pd/extra/pd~/pd~.c
@@ -178,13 +178,13 @@ static void pd_tilde_donew(t_pd_tilde *x, char *pddir, char *schedlibdir,
     struct stat statbuf;
     x->x_infd = x->x_outfd = 0;
     x->x_childpid = -1;
-    snprintf(pdexecbuf, MAXPDSTRING, "%s/bin/pd", pddir);
+    snprintf(pdexecbuf, MAXPDSTRING, "%s/bin/pd-l2ork", pddir);
     if (stat(pdexecbuf, &statbuf) < 0)
     {
-        snprintf(pdexecbuf, MAXPDSTRING, "%s/../../../bin/pd", pddir);
+        snprintf(pdexecbuf, MAXPDSTRING, "%s/../../../bin/pd-l2ork", pddir);
         if (stat(pdexecbuf, &statbuf) < 0)
         {
-            snprintf(pdexecbuf, MAXPDSTRING, "%s/pd", pddir);
+            snprintf(pdexecbuf, MAXPDSTRING, "%s/pd-l2ork", pddir);
             if (stat(pdexecbuf, &statbuf) < 0)
             {
                 ERROR "pd~: can't stat %s", pdexecbuf);
diff --git a/pd/src/makefile.in b/pd/src/makefile.in
index f289e88dd24926dd9ffe4d829cb6039e16a694eb..aba431b08b5f172d09f820223bb9034af355ea13 100644
--- a/pd/src/makefile.in
+++ b/pd/src/makefile.in
@@ -203,7 +203,7 @@ install:  all
 	install $(BINARYMODE) $(PDEXEC) $(DESTDIR)$(bindir)/@PDEXEC@
 # kludge to allow pd~ to work by default in pd-l2ork
 	rm -f $(DESTDIR)$(libpddir)/pd
-	ln -s $(bindir)/pd-l2ork $(DESTDIR)$(libpddir)/pd
+	#ln -s $(bindir)/pd-l2ork $(DESTDIR)$(libpddir)/bin/pd
 	install -m755 $(BIN_DIR)/pdsend $(DESTDIR)$(bindir)/pdsend
 	install -m755 $(BIN_DIR)/pdreceive $(DESTDIR)$(bindir)/pdreceive 
 	for dir in $(shell ls -1 ../doc | grep -v CVS); do \
diff --git a/pd/src/s_main.c b/pd/src/s_main.c
index 8c9b52a2ebda360267fa2459784d4d638980ef47..23318379e4b38403eef38e0a3ec941e8c523860a 100644
--- a/pd/src/s_main.c
+++ b/pd/src/s_main.c
@@ -459,14 +459,6 @@ void sys_findprogdir(char *progname)
             /* go back to the parent from there, e.g., ~/pd */
         lastslash = strrchr(sbuf, '/');
         if (lastslash)
-        {
-            strncpy(sbuf2, sbuf, lastslash-sbuf);
-            sbuf2[lastslash-sbuf] = 0;
-        }
-            /* go back to the parent from there once more, e.g., ~/pd */
-		strcpy(sbuf, sbuf2);
-        lastslash = strrchr(sbuf, '/');
-        if (lastslash)
         {
             strncpy(sbuf2, sbuf, lastslash-sbuf);
             sbuf2[lastslash-sbuf] = 0;