diff --git a/plugins/c9.ide.dialog.common/alert_internal.js b/plugins/c9.ide.dialog.common/alert_internal.js
index 572c48ad..042b3277 100644
--- a/plugins/c9.ide.dialog.common/alert_internal.js
+++ b/plugins/c9.ide.dialog.common/alert_internal.js
@@ -42,6 +42,8 @@ define(function(require, module, exports) {
.replace(/\n/g, "
")
.replace(/(https?:\/\/[^\s]*\b)/g, "$1");
+ plugin.getElement("ok").setCaption(options.yes || "OK");
+
plugin.update([
{ id: "dontshow", visible: options && options.showDontShow }
]);
diff --git a/plugins/c9.vfs.client/endpoint.js b/plugins/c9.vfs.client/endpoint.js
index c90ff5e3..59197dc9 100644
--- a/plugins/c9.vfs.client/endpoint.js
+++ b/plugins/c9.vfs.client/endpoint.js
@@ -225,6 +225,10 @@ define(function(require, exports, module) {
callback(fatalError(res.error.message, "dashboard"));
return;
}
+ else if (err.code == 404) {
+ callback(fatalError("This workspace no longer appears to exist or failed to be created.", "dashboard"));
+ return;
+ }
else if (err.code === 428 && res.error) {
emit("restore", {
projectState: res.error.projectState,
diff --git a/plugins/c9.vfs.client/vfs_client.js b/plugins/c9.vfs.client/vfs_client.js
index 9e11a4d0..0f07d9b4 100644
--- a/plugins/c9.vfs.client/vfs_client.js
+++ b/plugins/c9.vfs.client/vfs_client.js
@@ -253,7 +253,7 @@ define(function(require, exports, module) {
err.message = "SSH permission denied. Please review your workspace configuration.";
return showAlert("Workspace Error", "Unable to access your workspace", err.message, function() {
window.location = dashboardUrl;
- });
+ }, { yes: "Return to dashboard" });
case "reload":
lastError = showError(err.message + ". Please reload this window.", -1);
setTimeout(function() {