Bug 214391 - graphics/hugin crashes when aligning JPEG images
Summary: graphics/hugin crashes when aligning JPEG images
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Greg Lehey
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-11-10 13:18 UTC by freebsd
Modified: 2018-02-03 01:07 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (grog)


Attachments
files (854.50 KB, application/x-tar)
2016-11-11 00:07 UTC, freebsd
no flags Details
Hugin output from reduced test images (185.91 KB, image/jpeg)
2016-11-11 01:31 UTC, Greg Lehey
no flags Details
tarball with .hugin_org .hugin hugin.diff (15.00 KB, application/x-tar)
2016-11-11 15:12 UTC, freebsd
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description freebsd 2016-11-10 13:18:07 UTC
10.3-RELEASE-p7 FreeBSD 10.3-RELEASE-p7 #0: Thu Aug 11 18:38:15 UTC 2016     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64

hugin crashes when attempting to align images using the simple interface.

hugin NewZealand_2187[A-B]*.jpg
(hugin:31624): Gtk-CRITICAL **: IA__gtk_widget_set_size_request: assertion 'height >= -1' failed
...
/usr/local/share/hugin/data/plugins/crop_cp.py
   CAT:Control Points
   NAM:Crop Control Points
   fails @api-max
/usr/local/share/hugin/data/plugins/shooting_pattern.py
   CAT:initial distribution
   NAM:6-1-1 Shooting Pattern
/usr/local/share/hugin/data/plugins/top_five.py
   CAT:Control Points
   NAM:keep 5 CPs per image pair
/usr/local/share/hugin/data/plugins/woa.py
   CAT:Control Points
   NAM:Warped Overlap Analysis
   fails @api-max
**** align button clicked here ****
(hugin:31624): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 0 and height -18

(hugin:31624): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -5 and height 10

/usr/local/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier<T>::value)) == argtype" failed in wxArgNo
rmalizer(): format specifier doesn't match argument type

backtrace:

1] wxString wxString::Format<unsigned long>(wxFormatString const&, unsigned long)
[2] wxGenericListCtrl::wxGenericListCtrl()
[3] wxEventFunctorMethod<wxEventTypeTag<wxPaintEvent>, wxEvtHandler, wxEvent, wxEvtHandler>::GetEvtMethod() const
[4] main
Comment 1 Greg Lehey freebsd_committer 2016-11-10 22:15:32 UTC
As far as I can tell, this is because one of the images is empty.  Could you please check the sizes and the integrity of the images.  If they're OK, please attach them to this problem report.

You haven't explained why this should affect many people.  Until proof of the contrary, I've changed it to "Affects Only Me".
Comment 2 freebsd 2016-11-11 00:07:25 UTC
Created attachment 176883 [details]
files

These are reduced versions of the original files that failed.
They were reduced using gimp.
When loaded, hugin will complain about no field of view info; that complaint does not appear when using the original files.
In any case, using the simple interface, the error occurs when "Align" is clicked.
Original files are unmodified output from an Olympus EM5 camera.
Pano was created successfully using same images under fbsd 9.2 and hugin generated from ports some time ago.
Comment 3 Greg Lehey freebsd_committer 2016-11-11 01:31:15 UTC
Created attachment 176886 [details]
Hugin output from reduced test images
Comment 4 Greg Lehey freebsd_committer 2016-11-11 01:37:47 UTC
In general it's a good idea to supply the original images in a matter
like this, since it could depend on them.  In particular, as you note,
GIMP mutilates the EXIF data (specifically the crop factor).  That's
the reason for the popup.  On the other hand, I see that Bugzilla
won't accept file larger than 1 MB.

I have tried stitching this panorama, and it works perfectly, both
with the Simple and the Expert interface.  I'm attaching the result.
Did you try to align with these reduced images?  Also, could you
please confirm that you are using the current Hugin port.  Help/About
should show version 2016.2.0.be8da0221960.

If all this tallies, and you're still having trouble with the original
images, please supply the original images out of band; if you don't
have anywhere you can put them, send me email and I'll work something
out.  It would also be a good idea to try alignment with the Expert
interface, though don't expect that to make any difference.
Comment 5 freebsd 2016-11-11 02:07:12 UTC
The 1MB restriction on uploads is the reason for the reduced images.
Originals here:
  http://www.dreamchaser.org/uploads

Yes, I tried aligning the reduced images and had the same problem:
/usr/local/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier<T>::value)) == argtype" failed in wxArgNormalizer(): format specifier doesn't match argument type

hugin version: 2016.2.0.be8da0221960, same

If it works for you, perhaps it is a library issue.
Here's what I've got:

$ ldd /usr/local/bin/hugin
/usr/local/bin/hugin:
        libpano13.so.3 => /usr/local/lib/libpano13.so.3 (0x800aab000)
        libGLEW.so.1 => /usr/local/lib/libGLEW.so.1 (0x800d27000)
        libboost_filesystem.so.1.55.0 => /usr/local/lib/libboost_filesystem.so.1.55.0 (0x800fc5000)
        libboost_system.so.1.55.0 => /usr/local/lib/libboost_system.so.1.55.0 (0x8011da000)
        libfftw3.so.3 => /usr/local/lib/libfftw3.so.3 (0x8013dd000)
        libvigraimpex.so.5 => /usr/local/lib/libvigraimpex.so.5 (0x801742000)
        libImath-2_2.so.12 => /usr/local/lib/libImath-2_2.so.12 (0x8019cf000)
        libIlmImf-2_2.so.22 => /usr/local/lib/libIlmImf-2_2.so.22 (0x801c00000)
        libIex-2_2.so.12 => /usr/local/lib/libIex-2_2.so.12 (0x802104000)
        libHalf.so.12 => /usr/local/lib/libHalf.so.12 (0x802318000)
        libIlmThread-2_2.so.12 => /usr/local/lib/libIlmThread-2_2.so.12 (0x80255b000)
        libjpeg.so.8 => /usr/local/lib/libjpeg.so.8 (0x802761000)
        libtiff.so.5 => /usr/local/lib/libtiff.so.5 (0x8029cc000)
        libpng16.so.16 => /usr/local/lib/libpng16.so.16 (0x802c3e000)
        libz.so.6 => /lib/libz.so.6 (0x802e74000)
        libexiv2.so.14 => /usr/local/lib/libexiv2.so.14 (0x803200000)
        liblcms2.so.2 => /usr/local/lib/liblcms2.so.2 (0x80371f000)
        libceleste.so.0.0 => /usr/local/lib/hugin/libceleste.so.0.0 (0x803978000)
        libicpfindlib.so.0.0 => /usr/local/lib/hugin/libicpfindlib.so.0.0 (0x803b9d000)
        libwx_baseu-3.0.so.0 => /usr/local/lib/libwx_baseu-3.0.so.0 (0x803e00000)
        libwx_gtk2u_core-3.0.so.0 => /usr/local/lib/libwx_gtk2u_core-3.0.so.0 (0x804400000)
        libwx_gtk2u_aui-3.0.so.0 => /usr/local/lib/libwx_gtk2u_aui-3.0.so.0 (0x804bde000)
        libwx_gtk2u_xrc-3.0.so.0 => /usr/local/lib/libwx_gtk2u_xrc-3.0.so.0 (0x804e77000)
        libwx_gtk2u_html-3.0.so.0 => /usr/local/lib/libwx_gtk2u_html-3.0.so.0 (0x80513a000)
        libwx_baseu_xml-3.0.so.0 => /usr/local/lib/libwx_baseu_xml-3.0.so.0 (0x80540a000)
        libwx_gtk2u_adv-3.0.so.0 => /usr/local/lib/libwx_gtk2u_adv-3.0.so.0 (0x805617000)
        libwx_gtk2u_gl-3.0.so.0 => /usr/local/lib/libwx_gtk2u_gl-3.0.so.0 (0x8059dc000)
        libwx_baseu_net-3.0.so.0 => /usr/local/lib/libwx_baseu_net-3.0.so.0 (0x805bf2000)
        libwx_gtk2u_qa-3.0.so.0 => /usr/local/lib/libwx_gtk2u_qa-3.0.so.0 (0x805e31000)
        libGLU.so.1 => /usr/local/lib/libGLU.so.1 (0x80605a000)
        libGL.so.1 => /usr/local/lib/libGL.so.1 (0x8062dc000)
        libhuginbasewx.so.0.0 => /usr/local/lib/hugin/libhuginbasewx.so.0.0 (0x806555000)
        libhugin_python_interface.so.0.0 => /usr/local/lib/hugin/libhugin_python_interface.so.0.0 (0x806847000)
        libhuginbase.so.0.0 => /usr/local/lib/hugin/libhuginbase.so.0.0 (0x806c00000)
        libX11.so.6 => /usr/local/lib/libX11.so.6 (0x80742f000)
        libsqlite3.so.0 => /usr/local/lib/libsqlite3.so.0 (0x807767000)
        libpython2.7.so.1 => /usr/local/lib/libpython2.7.so.1 (0x807a22000)
        libc++.so.1 => /usr/lib/libc++.so.1 (0x807df6000)

        libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x8080b5000)
        libm.so.5 => /lib/libm.so.5 (0x8082d2000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x8084fb000)
        libthr.so.3 => /lib/libthr.so.3 (0x808709000)
        libc.so.7 => /lib/libc.so.7 (0x80892e000)
        libhdf5.so.100 => /usr/local/lib/libhdf5.so.100 (0x808e00000)
        libhdf5_hl.so.100 => /usr/local/lib/libhdf5_hl.so.100 (0x80933d000)
        libIexMath-2_2.so.12 => /usr/local/lib/libIexMath-2_2.so.12 (0x80955f000)
        liblzma.so.5 => /usr/lib/liblzma.so.5 (0x809762000)
        libjbig.so.2 => /usr/local/lib/libjbig.so.2 (0x80998b000)
        libexpat.so.1 => /usr/local/lib/libexpat.so.1 (0x809b98000)
        libexecinfo.so.1 => /usr/lib/libexecinfo.so.1 (0x809dbf000)
        libgtk-x11-2.0.so.0 => /usr/local/lib/libgtk-x11-2.0.so.0 (0x80a000000)
        libgdk-x11-2.0.so.0 => /usr/local/lib/libgdk-x11-2.0.so.0 (0x80a62f000)
        libpangocairo-1.0.so.0 => /usr/local/lib/libpangocairo-1.0.so.0 (0x80a8df000)
        libatk-1.0.so.0 => /usr/local/lib/libatk-1.0.so.0 (0x80aaec000)
        libcairo.so.2 => /usr/local/lib/libcairo.so.2 (0x80ad15000)
        libgdk_pixbuf-2.0.so.0 => /usr/local/lib/libgdk_pixbuf-2.0.so.0 (0x80b02b000)
        libgio-2.0.so.0 => /usr/local/lib/libgio-2.0.so.0 (0x80b24a000)
        libpangoft2-1.0.so.0 => /usr/local/lib/libpangoft2-1.0.so.0 (0x80b5b5000)
        libpango-1.0.so.0 => /usr/local/lib/libpango-1.0.so.0 (0x80b7ca000)
        libgobject-2.0.so.0 => /usr/local/lib/libgobject-2.0.so.0 (0x80ba19000)
        libfontconfig.so.1 => /usr/local/lib/libfontconfig.so.1 (0x80bc61000)
        libfreetype.so.6 => /usr/local/lib/libfreetype.so.6 (0x80bea6000)
        libgthread-2.0.so.0 => /usr/local/lib/libgthread-2.0.so.0 (0x80c148000)
        libglib-2.0.so.0 => /usr/local/lib/libglib-2.0.so.0 (0x80c349000)
        libintl.so.8 => /usr/local/lib/libintl.so.8 (0x80c64f000)
        libXxf86vm.so.1 => /usr/local/lib/libXxf86vm.so.1 (0x80c85a000)
        libSM.so.6 => /usr/local/lib/libSM.so.6 (0x80ca5e000)
        libnotify.so.4 => /usr/local/lib/libnotify.so.4 (0x80cc65000)
        libwebkitgtk-1.0.so.0 => /usr/local/lib/libwebkitgtk-1.0.so.0 (0x80d000000)
        libsoup-2.4.so.1 => /usr/local/lib/libsoup-2.4.so.1 (0x80f17f000)
        libjavascriptcoregtk-1.0.so.0 => /usr/local/lib/libjavascriptcoregtk-1.0.so.0 (0x80f600000)
        libglapi.so.0 => /usr/local/lib/libglapi.so.0 (0x80fe02000)
        libXext.so.6 => /usr/local/lib/libXext.so.6 (0x81006b000)
        libXdamage.so.1 => /usr/local/lib/libXdamage.so.1 (0x81027c000)
        libXfixes.so.3 => /usr/local/lib/libXfixes.so.3 (0x81047e000)
        libX11-xcb.so.1 => /usr/local/lib/libX11-xcb.so.1 (0x810683000)
        libxcb.so.1 => /usr/local/lib/libxcb.so.1 (0x810884000)
        libxcb-glx.so.0 => /usr/local/lib/libxcb-glx.so.0 (0x810aa9000)
        libxcb-dri2.so.0 => /usr/local/lib/libxcb-dri2.so.0 (0x810cc2000)
        libdrm.so.2 => /usr/local/lib/libdrm.so.2 (0x810ec6000)
        libutil.so.9 => /lib/libutil.so.9 (0x8110d3000)
        libelf.so.1 => /usr/lib/libelf.so.1 (0x8112e6000)
        libXrender.so.1 => /usr/local/lib/libXrender.so.1 (0x8114fb000)
        libXinerama.so.1 => /usr/local/lib/libXinerama.so.1 (0x811704000)
        libXi.so.6 => /usr/local/lib/libXi.so.6 (0x811906000)
        libXrandr.so.2 => /usr/local/lib/libXrandr.so.2 (0x811b14000)
        libXcursor.so.1 => /usr/local/lib/libXcursor.so.1 (0x811d1d000)
        libgmodule-2.0.so.0 => /usr/local/lib/libgmodule-2.0.so.0 (0x811f27000)
        libXcomposite.so.1 => /usr/local/lib/libXcomposite.so.1 (0x81212a000)
        libharfbuzz.so.0 => /usr/local/lib/libharfbuzz.so.0 (0x81232c000)
        libpixman-1.so.0 => /usr/local/lib/libpixman-1.so.0 (0x812586000)
        libEGL.so.1 => /usr/local/lib/libEGL.so.1 (0x81282a000)
        libxcb-shm.so.0 => /usr/local/lib/libxcb-shm.so.0 (0x812a46000)
        libxcb-render.so.0 => /usr/local/lib/libxcb-render.so.0 (0x812c48000)
        libffi.so.6 => /usr/local/lib/libffi.so.6 (0x812e54000)
        libbz2.so.4 => /usr/lib/libbz2.so.4 (0x81305b000)
        libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x81326d000)
        libpcre.so.1 => /usr/local/lib/libpcre.so.1 (0x813567000)
        libICE.so.6 => /usr/local/lib/libICE.so.6 (0x8137e0000)
        libenchant.so.1 => /usr/local/lib/libenchant.so.1 (0x8139fb000)
        libharfbuzz-icu.so.0 => /usr/local/lib/libharfbuzz-icu.so.0 (0x813c05000)
        libgstapp-1.0.so.0 => /usr/local/lib/libgstapp-1.0.so.0 (0x813e07000)
        libgstaudio-1.0.so.0 => /usr/local/lib/libgstaudio-1.0.so.0 (0x814013000)
        libgstfft-1.0.so.0 => /usr/local/lib/libgstfft-1.0.so.0 (0x81426e000)
        libgstpbutils-1.0.so.0 => /usr/local/lib/libgstpbutils-1.0.so.0 (0x814477000)
        libgstvideo-1.0.so.0 => /usr/local/lib/libgstvideo-1.0.so.0 (0x8146ab000)
        libgstbase-1.0.so.0 => /usr/local/lib/libgstbase-1.0.so.0 (0x814935000)
        libgstreamer-1.0.so.0 => /usr/local/lib/libgstreamer-1.0.so.0 (0x814b93000)
        libsecret-1.so.0 => /usr/local/lib/libsecret-1.so.0 (0x814eb1000)
        libxslt.so.1 => /usr/local/lib/libxslt.so.1 (0x8150f9000)
        libxml2.so.2 => /usr/local/lib/libxml2.so.2 (0x815334000)
        libicui18n.so.57 => /usr/local/lib/libicui18n.so.57 (0x815800000)
        libicuuc.so.57 => /usr/local/lib/libicuuc.so.57 (0x815c9b000)
        libicudata.so.57 => /usr/local/lib/libicudata.so.57 (0x816048000)
        libwebp.so.6 => /usr/local/lib/libwebp.so.6 (0x816249000)
        libXt.so.6 => /usr/local/lib/libXt.so.6 (0x8164af000)
        libXau.so.6 => /usr/local/lib/libXau.so.6 (0x816711000)
        libpthread-stubs.so.0 => /usr/local/lib/libpthread-stubs.so.0 (0x816913000)
        libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 (0x816b14000)
        libgraphite2.so.3 => /usr/local/lib/libgraphite2.so.3 (0x816d19000)
        libxcb-xfixes.so.0 => /usr/local/lib/libxcb-xfixes.so.0 (0x816f4c000)
        libgbm.so.1 => /usr/local/lib/libgbm.so.1 (0x817153000)
        libgsttag-1.0.so.0 => /usr/local/lib/libgsttag-1.0.so.0 (0x817359000)
        liborc-0.4.so.0 => /usr/local/lib/liborc-0.4.so.0 (0x817594000)
        librt.so.1 => /usr/lib/librt.so.1 (0x817823000)
        libgcrypt.so.20 => /usr/local/lib/libgcrypt.so.20 (0x817a29000)
        libgpg-error.so.0 => /usr/local/lib/libgpg-error.so.0 (0x817d2e000)

Are you running amd64?
Comment 6 Greg Lehey freebsd_committer 2016-11-11 03:00:18 UTC
Yes, I'm running amd64.  Comparing your library versions, there are no
version conflicts, but there are some different libraries which appear
to be related to the display hardware.  But that shouldn't make a
difference.

What does make a difference is the choice of control point detector,
which is what is failing here.  Normally I use panomatic, and in some
caes (when panomatic fails) I use cpfind.  Both of these work for me
on these images.  But autopano-sift-c fails in the way you describe,
though I received no log messages before the

  /usr/local/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier<T>::value)) == argtype" failed in wxArgNormalizer(): format specifier doesn't match argument type

What I did get was:

  Searching for control points
  Could not find "autopano-noop.sh" in path.

So it looks as if this problem is related to autopano-sift-c.  Could
you please try with cpfind and panomatic?  You'll need the expert
interface to change it: in the main window (which is hidden in simple
mode), select File/Preferences/Control Point Detectors.  When setting
the detector, be sure to select "Set as default"; otherwise nothing
changes.
Comment 7 freebsd 2016-11-11 04:12:00 UTC
With panomatic set as default, I get the same failure.
I had "hugin's cpfind" set as the original default, so that also fails for me.

This is really weird; I'm a complete novice at this, but here's what I'm seeing:

If I run in the expert interface and do the following:
  Photos Tab:
    Create Control Points
    Do both optimizations (Geometric & Photometric)
      Don't think this matters
  Stitcher Tab:
    Stitch!
it seems to work, regardless of the control point detector chosen.
When using autopano-sift-c, I see some dialogs flash rapidly on the display, too fast to read, but it creates the control points ok.  I don't see any dialogs flash when using panomatic.

If, after successfully doing the above, I delete all the control points
  Control Points Tab:
    Select first control point
    Delete
    Delete... until none left
Then change interface to Simple
Click Align
  I get the error.

Is there a way to get a log of everything it's doing?  I couldn't find a log file or a way to see/set one.  There's one in the batch processing window that pops up when the stitching is done, and I set that, but I don't see any output log (not sure where to look, directory-wise; I'm checking the tmp dir which is also where the images are proj file are).
Comment 8 Greg Lehey freebsd_committer 2016-11-11 06:16:04 UTC
OK, the autopano-sift-C issue was incorrect, but I've followed it up
on my system.  I had an old config file which gave the name
autopano-noop.sh to the control point detector.  That didn't exist,
and its absence triggers the message:

  /usr/local/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier<T>::value)) == argtype" failed in wxArgNormalizer(): format specifier doesn't match argument type

Isn't that intuitive?  So one reason mught be that the fast panorama
preview doesn't find the control point detector.  That's confusing,
because the standard window does.  Potentially this is a configuration
issue, particularly since you have upgraded from an earlier version of
Hugin.  I have a few ideas, but these two are easiest:

1.  You're running Hugin on a local X display, right?  Otherwise
    change to a local display and see if that fixes the problem.  The
    Fast Panorama Preview has become rather fussy lately.

2.  Otherwise,
  - Make sure Hugin isn't running.
  - Rename your .hugin file (in the home directory) to something else.
    Don't forget the name.
  - Run hugin and try again.  It'll create a new .hugin file.
  - Try stitching again.

If it works after that, run diff to compare the two files.  If it
doesn't, we'll move on to the next step.
Comment 9 freebsd 2016-11-11 15:12:02 UTC
> I had an old config file which gave the name
> autopano-noop.sh to the control point detector.  That didn't exist,
> and its absence triggers the message:
> 
>  /usr/local/include/wx-3.0/wx/strvararg.h(456): assert "(argtype &
> (wxFormatStringSpecifier<T>::value)) == argtype" failed in wxArgNormalizer():
> format specifier doesn't match argument type
> 
> Isn't that intuitive?

blech.
One additional data point.
Up until about two weeks ago, I ran with 1280x1024 resolution.  I'm now running with 1024x768 as I broke my back and am lying down and farther from the display and I need bigger writing to be able to see it.  However, I tried changing back to 1280x1024 and I still get the errors, so that's not it.  I also still get the gtk errors at startup; I was hoping they were related to display size.  Given the apparent inaccuracy of the error and the fact that I get gtk errors which look like they could be related to bad calculations because of limited screen space I'm wondering if that's a possibility.

yes, I'm running on a local X display, so that's not it

>  - Rename your .hugin file (in the home directory) to something else.

That works.
I'm looking at the diffs now.
I've attached a tarball with old, new and diff
Comment 10 freebsd 2016-11-11 15:12:56 UTC
Created attachment 176900 [details]
tarball with .hugin_org .hugin hugin.diff
Comment 11 freebsd 2016-11-11 16:54:52 UTC
Yikes...
This line appears to be the problem:

tempDir=/home/garya/tmp

That is a valid dir:

$ ls /home/garya/tmp
DG_0117.pto                     Earring_0002_20161016_001.jpg
DG_0117.tif                     Earring_0002_20161016_002.jpg
...

However, there is this:

I have /usr/home and /home pointing to a separate mounted filesystem:

$ls -dl /home
lrwxr-xr-x  1 root  wheel  9 Oct 11 12:58 /home -> /hd2/home
$ ls -dl /usr/home
lrwxr-xr-x  1 root  wheel  9 Oct 11 12:58 /usr/home -> /hd2/home

$ df  
Filesystem           1K-blocks      Used     Avail Capacity  Mounted on
/dev/ufs/hd250G1root   4053308    964132   2764912    26%    /
devfs                        1         1         0   100%    /dev
/dev/ufs/hd250G1var   16233660    573084  14361884     4%    /var
/dev/ufs/hd250G1usr  216201244  32746516 166158632    16%    /usr
tmpfs                 17842208        96  17842112     0%    /tmp
/dev/ada2p7           10143484   7061748   2270260    76%    /hd2/Downloads
/dev/ada2p8          101556508  58025984  35406004    62%    /hd2/home
/dev/ada2p9          792722992 259428660 469876496    36%    /hd2/home/garya/Photos

I don't know how that affects things, but I have seen problems in ufraw, for example, with /home/garya being saved as /hd2/home/garya which causes grief when the mount point changes.
Comment 12 freebsd 2016-11-11 17:33:30 UTC
The symlinks don't have anything to do with it; setting tempDir to /tmp has the same effect.  It seems like setting it to anything causes the failure.  I suspect there is code somewhere that uses the default location no matter what rather than using the tempDir value.
Comment 13 Greg Lehey freebsd_committer 2016-11-12 01:54:03 UTC
OK, finally we're making progress.  We've seen this before in the Hugin project, but you were the first to provide coherent feedback.  It might take a while to get a fix, but in the meantime you have a workaround.  Theoretically this PR is now finished, since it's not a FreeBSD problem, but I'll leave it open until I can get a fix.
Comment 14 freebsd 2016-11-12 04:41:54 UTC
Yep, easy workaround.

Thanks for the help zeroing in on it.
Comment 15 Walter Schwarzenfeld freebsd_triage 2018-01-12 14:40:26 UTC
Hugin version is at 2017.0.0. Is this still a problem, or is it overcome by events.
Comment 16 freebsd 2018-02-03 01:04:22 UTC
Appears to be fixed in 2017.0.0 running on
FreeBSD breakaway.dreamchaser.org 10.3-RELEASE-p20 FreeBSD 10.3-RELEASE-p20 #0: Wed Jul 12 03:13:07 UTC 2017     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64