After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 706857 - "Deprecated" decoration causes segfault
"Deprecated" decoration causes segfault
Status: RESOLVED FIXED
Product: valadoc
Classification: Other
Component: doclet/devhelp
git master
Other Linux
: Normal normal
: ---
Assigned To: valadoc-maint
valadoc-maint
Depends on:
Blocks:
 
 
Reported: 2013-08-27 00:21 UTC by Travis Reitter
Modified: 2014-08-22 18:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
minimal test case (180 bytes, text/x-vala)
2013-08-27 00:21 UTC, Travis Reitter
Details
Four separate but related crashers with Folks master (13.43 KB, text/plain)
2013-08-27 16:21 UTC, Travis Reitter
Details

Description Travis Reitter 2013-08-27 00:21:26 UTC
Created attachment 253210 [details]
minimal test case

The following lines on a constructor seems to be the source of a valadoc crasher:

  [Deprecated (since = "UNRELEASED",
      replacement = "IndividualAggregator.dup")]

I've attached a minimal test case that causes the crash. Here is the build command and error output:

  GEN      folks-doc.stamp
  GEN      folks-gtk-doc.stamp
/bin/sh: line 5: 26224 Segmentation fault      (core dumped) /opt/gnome/bin/valadoc -X -l -X ../folks/.libs/libfolks.so -o gtk-doc/folks --doclet=gtkdoc --force --package-version 0.9.5.20130826 --no-protected --driver "0.22" -X ../folks/folks.h --pkg=gmodule-2.0 --pkg=gio-2.0 --pkg=gee-0.8 --pkg=folks-internal --pkg=folks-generics --pkg=build-conf --vapidir=../folks --wiki=../docs/wiki ../folks/abstract-field-details.vala ../folks/alias-details.vala ../folks/anti-linkable.vala ../folks/avatar-cache.vala ../folks/avatar-details.vala ../folks/backend-store.vala ../folks/backend.vala ../folks/birthday-details.vala ../folks/debug.vala ../folks/email-details.vala ../folks/favourite-details.vala ../folks/folks-namespace.vala ../folks/gender-details.vala ../folks/group-details.vala ../folks/im-details.vala ../folks/individual-aggregator.vala ../folks/individual.vala ../folks/interaction-details.vala ../folks/local-id-details.vala ../folks/location-details.vala ../folks/name-details.vala ../folks/note-details.vala ../folks/object-cache.vala ../folks/persona-store.vala ../folks/persona.vala ../folks/phone-details.vala ../folks/postal-address-details.vala ../folks/potential-match.vala ../folks/presence-details.vala ../folks/role-details.vala ../folks/types.vala ../folks/url-details.vala ../folks/utils.vala ../folks/web-service-details.vala
make[2]: *** [folks-gtk-doc.stamp] Error 139
make[2]: *** Waiting for unfinished jobs....
/bin/sh: line 4: 26221 Segmentation fault      (core dumped) /opt/gnome/bin/valadoc -o folks/ --doclet=devhelp --force --package-version 0.9.5.20130826 --no-protected --driver "0.22" -X ../folks/folks.h --pkg=gmodule-2.0 --pkg=gio-2.0 --pkg=gee-0.8 --pkg=folks-internal --pkg=folks-generics --pkg=build-conf --vapidir=../folks --wiki=../docs/wiki ../folks/abstract-field-details.vala ../folks/alias-details.vala ../folks/anti-linkable.vala ../folks/avatar-cache.vala ../folks/avatar-details.vala ../folks/backend-store.vala ../folks/backend.vala ../folks/birthday-details.vala ../folks/debug.vala ../folks/email-details.vala ../folks/favourite-details.vala ../folks/folks-namespace.vala ../folks/gender-details.vala ../folks/group-details.vala ../folks/im-details.vala ../folks/individual-aggregator.vala ../folks/individual.vala ../folks/interaction-details.vala ../folks/local-id-details.vala ../folks/location-details.vala ../folks/name-details.vala ../folks/note-details.vala ../folks/object-cache.vala ../folks/persona-store.vala ../folks/persona.vala ../folks/phone-details.vala ../folks/postal-address-details.vala ../folks/potential-match.vala ../folks/presence-details.vala ../folks/role-details.vala ../folks/types.vala ../folks/url-details.vala ../folks/utils.vala ../folks/web-service-details.vala
make[2]: *** [folks-doc.stamp] Error 139
Comment 1 Travis Reitter 2013-08-27 16:21:14 UTC
Created attachment 253274 [details]
Four separate but related crashers with Folks master

These all crash due to the same function (g_type_check_instance_is_a()) with Folks master (~0.9.5).
Comment 2 Travis Reitter 2013-08-27 18:48:36 UTC
Interestingly, I can work around this bug by adding the following to the top of
folks-generics.vapi:

[CCode (gir_namespace = "Folks", gir_version = "0.6")]

This also gets included in the generated folks-internal.vapi as a consequence.

This was based on Florian noticing that I'd hit this issue before (which was
solved by including that decoration in other places). As of this writing, he
can't reproduce it (but he is building on an older Gnome setup, closer to 3.8
while mine is 3.9.x).
Comment 3 Florian Brosch 2013-09-16 16:16:13 UTC
Update: We both can't reproduce the bug anymore. I think it relates to the following commit:

https://git.gnome.org/browse/vala/commit/?id=60479cd3f351ab7f64ec3215a4d2dedd904af06d
Comment 4 Florian Brosch 2014-08-22 18:33:10 UTC
Fixed in a09c9e93af0d64b9331c274de573465fe070b722 (vala)