Index: gtk2_ardour/ardour_ui.cc
===================================================================
--- gtk2_ardour/ardour_ui.cc	(revision 10943)
+++ gtk2_ardour/ardour_ui.cc	(working copy)
@@ -2171,7 +2171,7 @@
 }
 
 
-/** Ask the user for the name of a new shapshot and then take it.
+/** Ask the user for the name of a new snapshot and then take it.
  */
 
 void
@@ -2205,24 +2205,13 @@
 		bool do_save = (snapname.length() != 0);
 
 		if (do_save) {
-			if (snapname.find ('/') != string::npos) {
-				MessageDialog msg (_("To ensure compatibility with various systems\n"
-				                     "snapshot names may not contain a '/' character"));
+			char illegal = Session::session_name_is_legal(snapname);
+			if (illegal) {
+				MessageDialog msg (string_compose (_("To ensure compatibility with various systems\n"
+				                     "snapshot names may not contain a '%1' character"), illegal));
 				msg.run ();
 				goto again;
 			}
-			if (snapname.find ('\\') != string::npos) {
-				MessageDialog msg (_("To ensure compatibility with various systems\n"
-				                     "snapshot names may not contain a '\\' character"));
-				msg.run ();
-				goto again;
-			}
-			if (snapname.find (':') != string::npos) {
-				MessageDialog msg (_("To ensure compatibility with various systems\n"
-				                     "snapshot names may not contain a ':' character"));
-				msg.run ();
-				goto again;
-			}
 		}
 
 		vector<sys::path> p;
@@ -2253,7 +2242,7 @@
 	}
 }
 
-/** Ask the user for the name of a new shapshot and then take it.
+/** Ask the user for a new session name and then rename the session to it.
  */
 
 void

