diff --git a/mercurial/commands.py b/mercurial/commands.py
index 7917a104a285764e3547730ebe885a571268ede1_bWVyY3VyaWFsL2NvbW1hbmRzLnB5..eb5ed02d87436bc19b1c25f66004a2e192df50f4_bWVyY3VyaWFsL2NvbW1hbmRzLnB5 100644
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2446,7 +2446,7 @@
             submatch = matchmod.narrowmatcher(subpath, m)
             for fsub in sub.walk(submatch):
                 if submatch.exact(fsub):
-                    subforget[os.path.join(subpath, fsub)] = (fsub, sub)
+                    subforget[subpath + '/' + fsub] = (fsub, sub)
         except error.LookupError:
             ui.status(_("skipping missing subrepository: %s\n") % subpath)