diff --git a/ChangeLog b/ChangeLog
index a31cc226f36e8b983d467c166441bab855ab7b45..94ab5ded30c131846132acb9011951c7249d22fc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -16,9 +16,6 @@ CVS code -
 	- Remove unneeded call to blank_edit(). (DLR)
 	- After entering "..", select the directory we were in before
 	  instead of the first filename in the list, as Pico does. (DLR)
-	- Display an error messsage on the statusbar if we try to move
-	  up from "/" via the "Go to Directory" prompt, for consistency.
-	  (DLR)
   browser_refresh()
 	- Simplify. (DLR)
 	- Fix problems where translated versions of "(dir)" could be
diff --git a/src/browser.c b/src/browser.c
index 00310e281c41bfc30b91dbba2e20b4d92cb95bc8..f9e4897505d749f692b99f4f8bd3542a020073fc 100644
--- a/src/browser.c
+++ b/src/browser.c
@@ -107,7 +107,6 @@ char *do_browser(char *path, DIR *dir)
 	int i;
 	size_t fileline;
 	char *new_path;
-	size_t new_path_len;
 
 	/* Compute the line number we're on now, so that we don't divide
 	 * by zero. */
@@ -243,25 +242,13 @@ char *do_browser(char *path, DIR *dir)
 		ans = mallocstrcpy(ans, "");
 
 		new_path = real_dir_from_tilde(answer);
-		new_path_len = strlen(new_path) + 1;
 
 		if (new_path[0] != '/') {
-		    new_path = charealloc(new_path, new_path_len +
-			strlen(answer));
+		    new_path = charealloc(new_path, strlen(new_path) +
+			strlen(answer) + 1);
 		    sprintf(new_path, "%s%s", path, answer);
 		}
 
-		if (new_path_len > 1 &&
-			new_path[new_path_len - 1] == '/')
-		    null_at(&new_path, new_path_len - 1);
-
-		/* We can't move up from "/". */
-		if (strcmp(new_path, "/..") == 0) {
-		    statusbar(_("Can't move up a directory"));
-		    beep();
-		    break;
-		}
-
 #ifndef DISABLE_OPERATINGDIR
 		if (check_operating_dir(new_path, FALSE)) {
 		    statusbar(