NOAA-PMEL / Ferret

The Ferret program from NOAA/PMEL
https://ferret.pmel.noaa.gov/Ferret/
The Unlicense
55 stars 20 forks source link

Ferret hangs or exits on a GO UNLABEL when label is undefined #1027

Open karlmsmith opened 6 years ago

karlmsmith commented 6 years ago

Reported by @AnsleyManke on 28 Sep 2010 19:24 UTC Reported by Ryo Furue, http://www.pmel.noaa.gov/maillists/tmap/ferret_users/fu_2010/msg00541.html

In interactive mode, this script causes Ferret to hang:

! tmp.jnl
! Unlabel 10, but there is no label 10.
!
use levitus_climatology
fill/k=1/set temp
go unlabel 10
ppl fill

If it is run in -gif mode, then Ferret crashes with:

ginqchoicest()   38 Specified workstation is neither of category INPUT nor of category OUTIN
ginitchoice()   38 Specified workstation is neither of category INPUT nor of category OUTIN
greqchoice()   38 Specified workstation is neither of category INPUT nor of category OUTIN
ginqlocst()   38 Specified workstation is neither of category INPUT nor of category OUTIN
ginqdisplayspacesize()   31 Specified workstation is of category MO
gsetlocmode()   38 Specified workstation is neither of category INPUT nor of category OUTIN
greqloc()   38 Specified workstation is neither of category INPUT nor of category OUTIN
**ERROR Ferret crash; signal = 11

Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/1755

karlmsmith commented 6 years ago

Comment by @AnsleyManke on 12 Sep 2012 00:03 UTC What GO UNLABEL does is to set LABEL 10 to a blank label at the origin. It also winds up defining the number of labels on the plot to 10.

The unset labels between the number of valid labels, NLABS, and 10, have default settings. On the PPL FILL command, Ferret goes to put all the moveable labels on the plot. These settings put PPLUS into a mode where it's going to put a menu on the plot for a mouse-click and a moveable label; but things aren't really set up to do that correctly so we get in a state where Ferret hangs or crashes.