if (!pl)
return;
- name = Playlist::bump_name (pl->name(), _session);
+ name = pl->name();
+
+ do {
+ name = Playlist::bump_name (name, _session);
+ } while (_session.playlist_by_name(name));
+
+ // TODO: The prompter "new" button should be de-activated if the user
+ // specifies a playlist name which already exists in the session.
if (prompt) {
prompter.set_prompt (_("Name for Playlist"));
prompter.set_initial_text (name);
prompter.add_button (Gtk::Stock::NEW, Gtk::RESPONSE_ACCEPT);
- prompter.set_response_sensitive (Gtk::RESPONSE_ACCEPT, false);
+ prompter.set_response_sensitive (Gtk::RESPONSE_ACCEPT, true);
prompter.show_all ();
switch (prompter.run ()) {