fix bad uuid.h ref, fix segv in is_over_patchbay for only one pane
authorGood Guy <good1.2guy@gmail.com>
Mon, 21 Mar 2016 00:26:58 +0000 (18:26 -0600)
committerGood Guy <good1.2guy@gmail.com>
Mon, 21 Mar 2016 00:26:58 +0000 (18:26 -0600)
cinelerra-5.1/cinelerra/brender.C
cinelerra-5.1/cinelerra/timelinepane.C

index 94a569a7faaf8bf7bbbe6dd545ecf319ad36574c..35144b26ad38117bdadb80988a012ef9057be9e0 100644 (file)
@@ -49,7 +49,7 @@
 
 extern "C"
 {
-#include <uuid/uuid.h>
+#include <uuid.h>
 }
 
 
index 7aae8ebd9426412a94174ca1956c2023cc5b6911..e3d3bb4fa394b0f66e45d2774565a29a84a77334 100644 (file)
@@ -319,8 +319,12 @@ Track *TimelinePane::is_over_patchbay()
        if( cursor_x < 0 || cursor_x >= w ) return 0;
        int cursor_y = gui->get_relative_cursor_y() - y;
        if( cursor_y < 0 || cursor_y >= h ) return 0;
+       int no = number;
+       TrackScroll *trackscroll = gui->pane[no]->trackscroll;
+       if( !trackscroll )
+               trackscroll = gui->pane[++no]->trackscroll;
 // left panes have patchbays, right panes have trackscroll
-       int pane_y = cursor_y + gui->pane[number+1]->trackscroll->get_position();
+       int pane_y = cursor_y + trackscroll->get_position();
        for( Track *track=mwindow->edl->tracks->first; track; track=track->next ) {
                int track_y = track->y_pixel; 
                if( pane_y < track_y ) continue;