[med-svn] [SCM] aghermann branch, master, updated. c0bd21ca8eb529ade7e0c7aad22951a308a8dc8f

Andrei Zavada johnhommer at gmail.com
Wed May 1 00:09:29 UTC 2013


The following commit has been merged in the master branch:
commit 4fc31e5e708b0aa945abf4f302f9c32bdac5c47f
Author: Andrei Zavada <johnhommer at gmail.com>
Date:   Wed Apr 24 01:35:25 2013 +0300

    update ChangeLog & ICM

diff --git a/ChangeLog b/ChangeLog
index 3f57c94..fccb970 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,8 +9,9 @@ v.0.9 (2013-xx-xx)
 	* Make all timestamps in sidecar files (a) relative to recording
 	  start, (b) expressed in seconds, to be consistent with embedded
 	  annotations.
-	* Fix crash when getting PSD on montage having channels with
+	* Fix a SF crash when getting PSD on montage having channels with
 	  variable sample rate, on OMP-enabled hosts.
+	* Fix a SF crash with montages with (>'z'-'a') channels.
 
 v.0.8.2 (2013-04-07)
 	* Fix GtkScrolledWindow issue in Annotations dialog.
diff --git a/src/ui/sf/montage.cc b/src/ui/sf/montage.cc
index 56943f5..36c2cd4 100644
--- a/src/ui/sf/montage.cc
+++ b/src/ui/sf/montage.cc
@@ -761,44 +761,42 @@ draw_montage( cairo_t* cr)
 		}
 	}
       // recording-wide annotations
-	if ( not common_annotations.empty() ) {
-		for ( auto &SA : common_annotations ) {
-			auto &S = *SA.first;
-			auto &A = *SA.second;
-			double	cvpa = cur_xvpage_start(),
-				cvpe = cur_xvpage_end(),
-				evpz = cvpe - cvpa;
-			double last_z = 0;
-			int overlap_count = 0;
-			if ( agh::alg::overlap( A.span.a, A.span.z, cvpa, cvpe) ) {
-				double	aa = A.span.a - cvpa,
-					ae = A.span.z - cvpa;
-				agh::alg::ensure_within( aa, -half_pad, -half_pad + evpz);
-				agh::alg::ensure_within( ae, -half_pad, -half_pad + evpz);
-
-				auto	wa = fmod(aa, evpz) / evpz * da_wd,
-					ww = (ae - aa) / evpz * da_wd;
-
-				if ( A.type == sigfile::SAnnotation::TType::plain ) {
-					int disp = 0 +
-						((last_z > A.span.a)
-						 ? ++overlap_count * 5
-						 : (overlap_count = 0));
-					last_z = A.span.z;
-
-					_p.CwB[SExpDesignUI::TColour::sf_embedded_annotations].set_source_rgba( cr);
-
-					cairo_set_line_width( cr, 2.5);
-					cairo_rectangle( cr, wa, 0, ww, da_ht);
-					cairo_fill( cr);
-					cairo_stroke( cr);
+	for ( auto &SA : common_annotations ) {
+		auto &S = *SA.first;
+		auto &A = *SA.second;
+		double	cvpa = cur_xvpage_start(),
+			cvpe = cur_xvpage_end(),
+			evpz = cvpe - cvpa;
+		double last_z = 0;
+		int overlap_count = 0;
+		if ( agh::alg::overlap( A.span.a, A.span.z, cvpa, cvpe) ) {
+			double	aa = A.span.a - cvpa,
+				ae = A.span.z - cvpa;
+			agh::alg::ensure_within( aa, -half_pad, -half_pad + evpz);
+			agh::alg::ensure_within( ae, -half_pad, -half_pad + evpz);
+
+			auto	wa = fmod(aa, evpz) / evpz * da_wd,
+				ww = (ae - aa) / evpz * da_wd;
+
+			if ( A.type == sigfile::SAnnotation::TType::plain ) {
+				int disp = 0 +
+					((last_z > A.span.a)
+					 ? ++overlap_count * 5
+					 : (overlap_count = 0));
+				last_z = A.span.z;
+
+				_p.CwB[SExpDesignUI::TColour::sf_embedded_annotations].set_source_rgba( cr);
+
+				cairo_set_line_width( cr, 2.5);
+				cairo_rectangle( cr, wa, 0, ww, da_ht);
+				cairo_fill( cr);
+				cairo_stroke( cr);
 
-					cairo_select_font_face( cr, "serif", CAIRO_FONT_SLANT_ITALIC, CAIRO_FONT_WEIGHT_NORMAL);
-					cairo_set_font_size( cr, 11);
-					cairo_set_source_rgb( cr, 0., 0., 0.);
-					cairo_move_to( cr, fmod(aa, evpz) / evpz * da_wd, da_ht - 12 - disp);
-					cairo_show_text( cr, A.label.c_str());
-				}
+				cairo_select_font_face( cr, "serif", CAIRO_FONT_SLANT_ITALIC, CAIRO_FONT_WEIGHT_NORMAL);
+				cairo_set_font_size( cr, 11);
+				cairo_set_source_rgb( cr, 0., 0., 0.);
+				cairo_move_to( cr, fmod(aa, evpz) / evpz * da_wd, da_ht - 12 - disp);
+				cairo_show_text( cr, A.label.c_str());
 			}
 		}
 	}

-- 
Sleep experiment manager



More information about the debian-med-commit mailing list