XFIG Users Manual

Bugs Fixed

Current release:

Bugs Fixed in xfig 3.2.8b

Adding points to splines works if boxes are present in the figure.
Stay in the working directory when browsing picture files.

-

Older releases of xfig:

Bugs Fixed in xfig 3.2.8

Read version 1.3 fig files.
The default resolution of embedded raster images is changed from 80 dpi to 72 dpi.
Read compressed files, but do not silently uncompress them.
Get correct bounding box (/MediaBox) of embedded pdf files.

Bugs Fixed in xfig 3.2.7b

Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
Fix core dump when clicking File -> Export. Ticket #45.
When exiting, cleanly pull down all windows. Ticket #54.
Adding and deleting arrows to arcs works, ticket #46.
Allow more than 100 comment lines, ticket #47.
Make xfig -update work again, would segfault.
Correctly draw interpolated splines, ticket #35.
Position points on grid, if appres.userspacing unequal 1. Ticket #31.

Bugs Fixed in xfig 3.2.7a

Debian bug numbers refer to https://bugs.debian.org/#.
Really fix a bug that a figure was saved in a second directory upon using the "Open.." dialog and pressing "Cancel". Ticket #9, debian bug #270113.

Bugs Fixed in xfig 3.2.7


Interpolated splines are now created with the recommended value of the shape factor of -0.5, not with -1.0. A description of the shape factor as used in xfig has been added in the file doc/FORMAT3.2
Apply xfig-3.2.6a-fallback-for-nonscalable-fonts.patch and xfig-3.2.6a-scalable-fonts.patch from Hans de Goede.
Apply debian patches 08_every_time.patch, 10_RELEASE_DATE.patch, 11_declare_swap_colors.patch, from Roland Rosenfeld.
Apply debian patch 07_colorsliderarrows.patch. Debian bug #870365.
Change map of India to disputed boundaries, from https://en.wikipedia.org/wiki/File:India_disputed_areas_map.svg, retrieved 2018-02-25. Debian bug #270799, 09_india_disputed.patch
Prevent integer overflow in {floor,ceil}_coords_{x,y}(). Fixes debian bug #300436. Also prevent integer overflow in round_coords().
Completely remove alloca.h and alloca() from the code.
When entering the "Save as..." dialog, moving to a new directory and pressing "Cancel", a subsequent "Save" wrote to the new directory. This happened analogously for the "Export" dialog. Fixed, ticket #9.

Bugs Fixed in xfig 3.2.6a

Add compile-switch --enable-tablet for using an input tablet.
Eventually, sorted out the xpm switches. Only use --enable-xpm-splash.
Improve ./configure and add diagnostic output.

Bugs Fixed in xfig 3.2.6


Update documentation to LaTeX and Xfig. From Roland Rosenfeld :
Update LaTeX documentation, use \documentclass instead of \documentstyle, \usepackage instead of \input.
Builds on hurd, had to #include in a few places.
Use application/x-xfig, not image/x-xfig in xfig.desktop file. See https://bugs.launchpad.net/ubuntu/+source/xfig/+bug/690067 and https://bugs.launchpad.net/ubuntu/+source/xfig/+bug/1045848 .

Bugs Fixed in xfig 3.2.6-rc

Should compile on Mac (Darwin) after installing dependencies using Macports, Fink or Homebrew.
To compile on ancient systems, try make -DANCIENT.
Report correct paths to installed files in the man page.
Add pathmax.h and dirstruct.h, to define DIRSTRUCT and PATH_MAX.

From Vladislav Zavjalov; Commit numbers refer to http://git.altlinux.org/people/slazav/packages/?p=xfig.git;a=commit;h=#
Preserve comments when deleting objects; Commit #6c42e5c
Restore colors and main comment after Delete All + Undo; #34f6105
Draw horizontal scrollbar if property buttons are too wide to fit on the screen. Commit #e9c1394
Add save8bit app-resource to allow saving 8-bit files. #5bd9fbb
Move Xfuncs.h and Xosdefs.h out from fig.h. Commit #b433478
Move -l flags from LDFLAGS to LDADD. Commit #2d57c85

From Roland Rosenfeld. Bug numbers refer to https://bugs.debian.org/#.
Do not link with -lXmu, if linking with Xaw3d > 1.5e.
Make japanese documentation available for LANG=ja_JP.ujis.
Set the Creation date in xfig_man.html to the date when creating the source tarball.
Really fix reading png files, https://bugzilla.redhat.com/show_bug.cgi?id=1150330
Delete some superfluos files, fix typos (Caribbean), add semicolon in xfig.desktop (debian bug #812477).

From Brian V. Smith:
old link for "Xfig On Microsoft Windows (Getting and Installing Xfig html page)
dash_list wrong dimension causes segfault on some line styles
Should handle systems where REG_NOERROR (regular expression) is undefined now
Missing xfig_man.html
When exporting, wasn't setting locale to "C" for all command-line parameters, so floating point numbers would contain "," instead of "."
Didn't allow enough space for fonts (would segfault when popping up File panels)
Moving arc point would segfault

Bugs Fixed in xfig 3.2.6-beta

From Roland Rosenfeld. Bug numbers refer to https://bugs.debian.org/#. In fact, most of the bugs below, also those from other sources, were fixed by applying the debian-patches.
Position independent executables work, fixes #756791.
Revert previous change of X-spline parameter.
Use C locale for fig2dev, to correctly interpret decimal point. Fixes debian bug #782737.
Correct grid mode distances in man page. Debian bug #314820.
Extend xfig.desktop.
Fix unsecure use of temporary file. From Thomas Hoger, gentoo. Debian bug #565341.
Escape - in man-page.
Securely print string.
Restore old shadow behaviour.
Fix reading "/MediaBox" when importing pdf. Closes debian bug #530898.
With -papersize b1, use B1, not B10. Debian bug #535181.

From Vladislav Zavjalov. Information on bugs is found at https://bugzilla.altlinux.org/show_bug.cgi?id=#
Do not use fontsets for symbol and dingbat fonts, #26579.
Fix compiler warnigs in w_indpanel.c. Commit feabe27.
Restore correct depths when loading a figure, then undo. Commit b5c79b3.
Restore filename after delete region, undo. Commit 219d690.
Restore user color when opening new fig-file. Commit fccd915.
Restore correct depths when joining lines with different depths. Commit a77bcaf.
Fix xfontlist->fset initialization. Commit a592399.
Fix default origin (100000,100000) -> (0,0) for filled objects. Commit 4d87e60.
Fix 100% cpu-load by save panel. Commit 81a4596.
Do not use local SimpleMenu.c with XAW3D1_5E. Would segfault on some 64-bit systems when opening main menu.
Missing argument may cause crash or undefined behaviour. Debian bug #795642. From Michael Tautschnig.

From Hans de Goede. Bug information at https://bugzilla.redhat.com/show_bug.cgi?id=#.
Patch for importing png-files, bug #1150330. From David Kaufmann.
Fix crash when changing arrow size. Red Hat bug #1046102.
Fix crash when creating dash-dotted lines. Red Hat bug #1023744.
From Michael Srb, thanks to Maurizio Pollini and David Kaufmann.
Fix crash on exit. From Peter Volkov at gentoo

Bugs Fixed in xfig 3.2.5c

Increased default width of layer panel from 58 to 64 to accomodate scrollbar width
missing comma in FIXED_JAPANESE_PDF #ifdef case in w_cmdpanel.c
printer name enclosed in apostrophes when printing in case has spaces in name
new link from Elizabeth Bailey for Fig applications referenced in installation.html
old link to duke.uask.ca for Fig applications has new link in installation.html
Typo in message "GIF read error on extention ..." should be "extension"
Possibility of stack overflow with malformed Fig files.
In version 1.4 of the PNG library dither was removed so xfig now uses quantize when importing PNG images with palettes
Other updates for PNG library version 1.5 from Peter Volkov
Some versions of Cygwin don't have either REG_NOERROR or REG_OKAY defined so REG_NOERROR defined to be 0
Changed X-Spline parameter to match original intent of X-Spline authors: changed definition of Q(s) from -s to -0.5 * s in u_draw_spline.c
Allowance for stricter ghostscript in -dSAFER mode. Was causing error on reading EPS images. From Hans de Goede
Security vulnerability with importing images fixed (RedHat bug # 657981 - xfig buffer overflow when opening .fig file with malicius color definition)
When exporting to combined PS/PDF/LATEX the -D option to exclude all but active layers was not passed to fig2dev
Uses 24-bit color instead of 8-bit when importing eps files (pcx24b driver for ghostscript)
Bug in freeing null fontset
Semicolon (;) added at end of MimeType line in xfig.desktop as per http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
Reference to "Darwin Ports" changed to "MacPorts"
Renamed O_TEXT to O_TXT to avoid conflicts with system define
On lines with Round or Projecting cap style and arrowheads, the line endpoint stuck out beyond the arrowhead

From Vladsilav Zavjalov:

Uses fontsets for all fonts in international mode
SEGV when zooming while creating object (e.g. text)
Add locale_encoding appres which acts similar to euc_encoding, but uses system locale and mbrlen function for multibyte character length calculation.
Move "file not found" error message from check_docfile() to launch_viewer(), remove excess check_docfile() call. Error message is not shown when looking for a locale-dependent docs. It is shown only if no docs found at all.
Do not do strcpy with equal arguments in w_cmdpanel.c/update_cur_filename()
Print to file had extra argument in sprintf in international mode
Message panel not tall enough with 3D Athena widgets
Warnings about different size of int and void * on 64-bit system. To fix this problem I changed int to intptr_t in some places.

Bugs Fixed in xfig 3.2.5b

Dimension line indicator incorrectly showed arrow length/width
Several patches from Fedora xfig maintainer
divide by 0 under certain circumstances in ruler code - From Libor Pechacek
Segfault if PRINTER env variable was not defined

Bugs Fixed in xfig 3.2.5a

dimension line arrowhead width and length used %d instead of %f in dialog, always displaying 0
leftover debugging printf(...color = ) in startup
finally fixed size of mode panel so it doesn't cover indicator panel under certain circumstances
removed "Alpha" from splash
updated copyright date in Help/About
problem with depth panel height due to snap mode indicator
snap indicator indicated "Focus" when "Diameter" was selected
w_keyboard.c had pointer assignment reversed
extraneous "done" in Imakefile in "install.jhtml" section From Eric Scott
many protoytpe cleanups from Eric Scott
#ifndef __FreeBSD__ added around #include < alloca.h > from Eric Scott
uses rint() instead of lrint() for those with non-C99 compilers
Solaris doesn't have REG_NOERROR for regex, so have new #define for that
added dependency on version.h and patchlevel.h for f_util.c and f_save.c to Imakefile
In imperial fractional scale mode, if the user scale factor wasn't 1.0, xfig would switch to decimal mode. This has been fixed to remain in fractional mode.
Added condition for GLIBC to not declare srandom(int)
Better resizing of message popup panel
Map of Spain included Portugal. From Eugen Dedu.
Double-clicking on either style or family would crash xfig
Export/Print grid units were not reset when loading Fig file of different units
When converting empty export/print grid units to fractional inches would make 0/2
Escaped hyphens in man page From Roland Rosendfeld
When exporting to all three: PostScript, PDF and TeX, incorrectly generated PostScript and PDF that included LaTeX-only (special) text
Bug when doing Save As to a shorter filename - would corrupt name sometimes
Note about 450 pixels/cm didn't make it from the FORMAT3.1 file to FORMAT3.2
Print command was using -P instead of -d for lp
On Cygwin, needed to double-escape PRINTER environment when backslashes in name
w_library.c had incompatible poiner type in call to ScanLibraryDirectory
Not enough characters allocated for ruler inch/cm indicators. Would cause segfault on zooming out because of longer ruler text, e.g. -10210cm

Bugs Fixed in xfig 3.2.5

xfig would crash on 64-bit processors because of a missing include, which causes new_string() to be declared implicitly as returning an integer. This may cause the top 32 bits to get lost and hence the crash.
Blanks not preserved in imported picture filename when reading Fig file
When in metric mode, decimal precision was ignored for dimension lines
When showing vertex numbers on objects, first vertex is now 0 to match edit window vertex numbers
Also, vertex numbers are not shown on inactive (grayed) layers
Widget shadow resources moved from Fig-color to Fig because they don't really have anything to do with color. There was a problem when running KDE because it set a global resource *Scrollbar*height: which made xfig freeze when *customization: -color was NOT used.
The point positioning indicator is turned on when editing a compound object to show the user that it is used
Increased the maximum size of images that can be imported. There was a limit in the PostScript image encoder of 4096x4096 pixels. This was increased to 8192x8192.
Centered text was changed to left-justified when flipped horizontally inside a compound object.
With -v option, after reporting the version, xfig would say that -v was an unknown option
Local locale was being used when writing the xfig cut buffer file instead of switching to "C" locale. This created commas instead of decimal (.) for numbers in those particular locales. From Dirk Osswald
Local locale was used when forming command for calling fig2dev, resulting in commas instead of decimals for floating point numbers.
count_user_colors buffer overflow fixed
Under Cygwin, temporary file stayed around after unlink(), causing error when importing more than one ps/eps/pdf file
Segfault when using -update because appres resources were NULL
-update option failed when not first option passed to xfig
Clicking window manager "close window" button in library titlebar didn't close the window
Wasn't distributing objects in compounds when there were only 2 objects
Some compilers complain about the order of declaration in u_fonts.h - fixed
Northern part of map of India was incorrect (Libraries/Maps/Asia/india.fig)
Map of Serbia was misnamed "yugoslavia.fig" (Libraries/Maps/Europe/yugoslavia.fig)
Map of Central Europe had old Yugoslavia instead of Croatia, Serbia, Bosnia- Herzegovina, and Macedonia (also, Slovenia was mistakenly inside the border)
Editing a compound object with more than 200 texts would crash xfig

Bugs Fixed in xfig 3.2.5-alpha5

typo in latex_and_xfig.html and LATEX_AND_XFIG files. Text should be: \convertMPtoPDF{foo.0}{1}{1} It was missing parameters {1}{1}
-correct_font_size missing from -help option list and man pages
-help and -version didn't work unless they were first in the options
-O option wasn't passed to fig2dev for overlapping pages in multiple page mode for PostScript export

Bugs Fixed in xfig 3.2.5-alpha4


When loading a library object, if it contained only a compound and nothing else, when xfig promoted that compound to the toplevel the main comment was lost
Incorrect header files used for SmeBSB resulted in either segfault or none of the command panel entries being underlined
Drawing very large splines (e.g. at zoom = 0.01) caused integer roundoff errors, making xfig loop indefinitely
Bug where a line that had a zero width or length arrowhead was not redrawn after being moved, copied, canvas redraw, etc.
The page border and axis lines would obscure Fig objects when moving, copying etc. other objects on the canvas.
In the popup picture editor, if the relative position of the corners of the picture were changed, the rotation field was not updated (this bug was in 3.2.5-alpha3 only)

Bugs Fixed in xfig 3.2.5-alpha3

Missing #ifdef XAW3D in SimpleMenu.c
Bug when breaking a compound object - depths were added twice to the counts
When implicitly cancelling the placement of a library object by choosing another mode, xfig would tell user to cancel or finish the current operation, but there was no way to do that
Picture Reread button was active before file was read the first time
Rereading picture in edit popup produced bad colors
When using multiple copies of an imported picture, h/w ratio was not computed for copies
Importing PCX images were incorrect when bytes per line different from width*bpp
When passed a filename containing a directory name for a Fig object library using -library_dir, and that directory only contains Fig files and no subdirectories with Fig files, xfig segfaulted
Several checks for memory allocation failure added to the library loading procs
Forgot to free allocated memory when return abnormally from loading libraries
Path length check in loading libraries fixed
Missing include for put_msg prototype in e_measeure.c
Needed #ifdef for XtVersion in SmeBSB.c (X11R5 doesn't have international fontset)
Added SIGPIPE signal to ignore in case an external program dies when we're using pipes
Screen capture on an MSBFirst X server with 24/32 bits per pixel was incorrect.
Importing any image file on such a server was incorrect (bytes/bits reversed).
Reading GIF or PCX files on 24-bit server *and* on big-endian machine (e.g. Sparcstation) resulted in bytes being swapped and funny colors
Could popup unit dialog when drawing/editing objects
Embedded whitespace in filenames in recently loaded files weren't parsed properly (.xfigrc)
When pasting an object on the canvas, point positioning grid wasn't used
Bug when reading a compressed eps file (file handle was passed to open proc instead of name)
Minor grid spec used twice instead of minor/major when passed to fig2dev
Fixed conversions of export/print grid values when switching to/from metric, decimal or fraction
When loading or merging a file, xfig appended ".fig" to the name if there wasn't ".fig" in the name. Now it only appends ".fig" if there is no suffix (no ".").
When appending the ".fig" before the previous change, xfig would segfault
Libraries/Electronic/Schematic/transformer and transformer_ironcore aligned to 1/16" grid
Bugs in indicator panel display of text flags, dimension line params and arrow size params when cycling through settings with middle or right mouse button
Bug in callbacks for dimension line checkboxes that select actual length or user text
When exporting to Combined PDF/LaTeX it uses ".pdf" and ".pdf_t" suffixes because LaTeX doesn't recognize ".pdftex" as a PDF file
Better clipping around arrowheads on thick lines (lines that are thicker than the arrowhead is wide)
Checks for open splines of less than 2 points when reading figure file and removes them
Clicking middle mouse button after creating first point of closed spline switched to freehand mode
Export panel sections would get messed up when changing export languages
Now checks whether scrollbars support StartScroll before trying to use it for the wheel scrolling. When the Xaw widgets are compiled with ARROW_SCROLLBAR, there is no such action.
pstex_t export lacked border option (-b) to align LaTeX text when pstex figure specified border (also fixed in fig2dev)
Create one picture object with no filename, then create another and xfig crashed
Some bugs when freeing dimension line components
Bad choices for grid dot spacing in metric mode in the 5mm grid, and decimal inch mode in the 0.5 and 1.0 inch grids
-international flag missing from xfig.html and xfig.man docs
Added call to XsetLocaleModifiers() when initializing input method (-international mode only)
xfig was limiting arrowhead lengths to 50 pixels instead of 50 inches, and the width to 10 pixels instead of 10 inches.
edit panel for circles shouldn't have "angle" entry
edit panel wasn't allowing typing in of negative angles for text and ellipses
Objects were sometimes drawn with a wild point when zooming
Full path was being added to default export filename and wasn't changing when user changed directories
When drawing a box or rounded box with the "show line lengths" on, the sizes were in Fig units (1200ppi) instead of user units.
Spacing cedilla (ISO 0xB8 / octal 270) was missing from CompKeyDB file
Changing the units in the popup edit panel for a text object caused a segfault.
Rulers and grid didn't change scale when user scale was != 1.0. Even though the message window showed the correct user scale when drawing objects, the rulers and grid still showed the unscaled values.
Axis lines through 0,0 now drawn after page border so it remains visible when there is a grid
Segfault if current directory was deleted after starting xfig
Positioning grid was set to "ANY" when editing a compound object, causing the original bounding box to be lost
Bug in arc drawing caused arcs to be drawn as circles at high zoom
Computing the area of a polygon larger than 38x38 inches overflowed calculation
Bug in bounds calculation for ellipses and circles that increased bounding box even with line width = 1
Limit on number of styles in a family wasn't checked
If all depths were turned off and any edit operation was attempted on the canvas such as move object, delete object, xfig would hang, searching for objects indefinitely.
[ Contents | Introduction | Credits ]