Index: gtk2_ardour/editor_ops.cc
===================================================================
--- gtk2_ardour/editor_ops.cc   (revision 1070)
+++ gtk2_ardour/editor_ops.cc   (working copy)
@@ -1855,6 +1855,12 @@
 }

 void
+Editor::play_from_edit_cursor ()
+{
+       session->request_locate (edit_cursor->current_frame, true);
+}
+
+void
 Editor::play_selection ()
 {
        if (selection->time.empty()) {
Index: gtk2_ardour/editor.cc
===================================================================
--- gtk2_ardour/editor.cc       (revision 1070)
+++ gtk2_ardour/editor.cc       (working copy)
@@ -1865,7 +1865,7 @@
        MenuList& play_items = play_menu->items();
        play_menu->set_name ("ArdourContextMenu");

-       play_items.push_back (MenuElem (_("Play from edit cursor")));
+       play_items.push_back (MenuElem (_("Play from edit cursor"), mem_fun(*this, &Editor::play_from_edit_cursor)));
        play_items.push_back (MenuElem (_("Play from start"), mem_fun(*this, &Editor::play_from_start)));
        play_items.push_back (MenuElem (_("Play region"), mem_fun(*this, &Editor::play_selected_region)));
        play_items.push_back (SeparatorElem());
@@ -1950,7 +1950,7 @@
        MenuList& play_items = play_menu->items();
        play_menu->set_name ("ArdourContextMenu");

-       play_items.push_back (MenuElem (_("Play from edit cursor")));
+       play_items.push_back (MenuElem (_("Play from edit cursor"), mem_fun(*this, &Editor::play_from_edit_cursor)));
        play_items.push_back (MenuElem (_("Play from start"), mem_fun(*this, &Editor::play_from_start)));
        edit_items.push_back (MenuElem (_("Play"), *play_menu));

Index: gtk2_ardour/editor.h
===================================================================
--- gtk2_ardour/editor.h        (revision 1070)
+++ gtk2_ardour/editor.h        (working copy)
@@ -893,6 +893,7 @@
        void rename_region_finished (bool);

        void play_from_start ();
+       void play_from_edit_cursor ();
        void play_selected_region ();
        void audition_selected_region ();
        void loop_selected_region ();
