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;

Reply via email to