Package: libplplot11 Version: 5.9.9-5 Severity: important File: libplplot Tags: upstream patch
Dear Maintainer, In an application I use a custom label function to plot the time on the x-axis. When the values on the y-axis are large there's an exponent label. The placement of this label seems to be wrong; depending on the system it's drawn on the right side of the y-axis inside the plot itself, or it's not drawn at all. When the label is not drawn the values on the y-axis are off by a factor 10^x. Another issue is that a pointer to memory locations are deferred expecting a certain struct, which is not true in my case. The problem has been reported upstream and has been fixed upstream in r12302, please consider applying the attached patch for Wheezy. Regards, Mark de Wever -- System Information: Debian Release: 7.1 APT prefers stable APT policy: (500, 'stable') Architecture: i386 (i686) Kernel: Linux 3.2.0-4-686-pae (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages libplplot11 depends on: ii libc6 2.13-38 ii libcsiro0 5.9.9-5 ii libfreetype6 2.4.9-1.1 ii libltdl7 2.4.2-1.1 ii libqsastime0 5.9.9-5 libplplot11 recommends no packages. Versions of packages libplplot11 suggests: pn plplot-tcl <none> pn plplot11-driver-cairo <none> pn plplot11-driver-gd <none> pn plplot11-driver-qt <none> pn plplot11-driver-wxwidgets <none> pn plplot11-driver-xwin <none> -- no debconf information
--- plplot-5.9.9/src/plbox.c.orig 2012-12-27 15:40:18.000000000 +0100 +++ plplot-5.9.9/src/plbox.c 2012-12-27 15:42:08.000000000 +0100 @@ -1500,7 +1500,7 @@ { // Assume label data is for placement of exponents if no custom // label function is provided. - if ( plsc->label_data ) + if ( !plsc->label_func && plsc->label_data ) { height = ( (PLLabelDefaults *) plsc->label_data )->exp_label_disp; pos = ( (PLLabelDefaults *) plsc->label_data )->exp_label_pos; @@ -1742,7 +1742,7 @@ if ( !lly && !ldy && !loy && ymode ) { snprintf( string, STRING_LEN, "(x10#u%d#d)", (int) yscale ); - if ( plsc->label_data ) + if ( !plsc->label_func && plsc->label_data ) { height = ( (PLLabelDefaults *) plsc->label_data )->exp_label_disp; pos = ( (PLLabelDefaults *) plsc->label_data )->exp_label_pos; @@ -2018,7 +2018,7 @@ { // Assume label data is for placement of exponents if no custom // label function is provided. - if ( plsc->label_data ) + if ( !plsc->label_func && plsc->label_data ) { height = ( (PLLabelDefaults *) plsc->label_data )->exp_label_disp; pos = ( (PLLabelDefaults *) plsc->label_data )->exp_label_pos; @@ -2274,7 +2274,7 @@ if ( !lly && !ldy && !loy && ymode ) { snprintf( string, STRING_LEN, "(x10#u%d#d)", (int) yscale ); - if ( plsc->label_data ) + if ( !plsc->label_func && plsc->label_data ) { height = ( (PLLabelDefaults *) plsc->label_data )->exp_label_disp; pos = ( (PLLabelDefaults *) plsc->label_data )->exp_label_pos;