Closed Bug 1604619 Opened 7 months ago Closed 7 months ago

all platforms busted 2019-12-17: make[4]: *** [libxul.so] Error 1 - ld.lld: error: undefined hidden symbol: nsStreamConverter::GetConvertedType(nsTSubstring<char> const&, nsTSubstring<char>&) referenced by nsStreamConverter.cpp

Categories

(Thunderbird :: Build Config, defect)

defect
Not set
blocker

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 73.0

People

(Reporter: mkmelin, Assigned: benc)

Details

Attachments

(1 file)

https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=281599870&repo=comm-central&lineNumber=55057

[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - /builds/worker/fetches/binutils/bin/ld: ../../../comm/mailnews/mime/src/nsStreamConverter.o:(.data.rel.ro._ZTV17nsStreamConverter+0x50): undefined reference to nsStreamConverter::GetConvertedType(nsTSubstring<char> const&, nsTSubstring<char>&)' [task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - /builds/worker/fetches/binutils/bin/ld: libxul.so: hidden symbolZN17nsStreamConverter16GetConvertedTypeERK12nsTSubstringIcERS1' isn't defined
[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - /builds/worker/fetches/binutils/bin/ld: final link failed: bad value
[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - clang-9: error: linker command failed with exit code 1 (use -v to see invocation)
[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - /builds/worker/workspace/build/src/config/rules.mk:608: recipe for target 'libxul.so' failed
[task 2019-12-17T19:51:26.163Z] 19:51:26 ERROR - make[4]: *** [libxul.so] Error 1
[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-thunderbird/toolkit/library/gtest'
[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - /builds/worker/workspace/build/src/config/recurse.mk:74: recipe for target 'toolkit/library/gtest/target' failed
[task 2019-12-17T19:51:26.163Z] 19:51:26 ERROR - make[3]: *** [toolkit/library/gtest/target] Error 2
[task 2019-12-17T19:51:26.163Z] 19:51:26 INFO - make[3]: *** Waiting for unfinished jobs....
[task 2019-12-17T19:55:21.068Z] 19:55:21 INFO - make[4]: Entering directory '/builds/worker/workspace/build/src/obj-thunderbird/toolkit/library/rust'

Summary: all platforms busted 2019-12-17: make[4]: *** [libxul.so] Error 1 → all platforms busted 2019-12-17: make[4]: *** [libxul.so] Error 1 - ld.lld: error: undefined hidden symbol: nsStreamConverter::GetConvertedType(nsTSubstring<char> const&, nsTSubstring<char>&)
Summary: all platforms busted 2019-12-17: make[4]: *** [libxul.so] Error 1 - ld.lld: error: undefined hidden symbol: nsStreamConverter::GetConvertedType(nsTSubstring<char> const&, nsTSubstring<char>&) → all platforms busted 2019-12-17: make[4]: *** [libxul.so] Error 1 - ld.lld: error: undefined hidden symbol: nsStreamConverter::GetConvertedType(nsTSubstring<char> const&, nsTSubstring<char>&) referenced by nsStreamConverter.cpp

Ben is working on it.

Assignee: nobody → benc

Suggested commit message:
Bug 1604619 - Port bug 1574372: Add nsStreamConverter::GetConvertedType(). r=

Looks straightforward.
An extra method (getConvertedType()) was added to nsIStreamConverter.

All the c++ implementations of nsIStreamConverter in m-c leave this as a stub (returning NS_ERROR_NOT_IMPLEMENTED). So I've just done that here too.
For reference, there are two JS implementations which aren't stubbed (they both just return "test/html"):

  • browser/extensions/pdfjs/content/PdfStreamConverter.jsm
  • devtools/client/jsonview/converter-child.js

Looking at the discussion in Bug 1574372, the NOT_IMPLEMENTED return is used to distinguish between streamconverters which support the method and those that don't. It seems that some streamconverters might be fundamentally unable to implement it.

I'd probably just leave it at that for now and deal with any other issues if they pop up.

Attachment #9116535 - Flags: review?(mkmelin+mozilla)
Comment on attachment 9116535 [details] [diff] [review]
1604619-implement-getConvertedType-1.patch

Please mention the ported bug in the commit message, see comment #3.
Comment on attachment 9116535 [details] [diff] [review]
1604619-implement-getConvertedType-1.patch

Review of attachment 9116535 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good, r=mkmelin. Landing shortly
Attachment #9116535 - Flags: review?(mkmelin+mozilla) → review+

Pushed by mkmelin@iki.fi:
https://hg.mozilla.org/comm-central/rev/bc93079edb45
Port bug 1574372: Add nsStreamConverter::GetConvertedType(). r=mkmelin

Status: NEW → RESOLVED
Closed: 7 months ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 73.0

(In reply to Jorg K (GMT+1) (PTO to 5th Jan 2020, sporadically reading bugmail) from comment #3)

Suggested commit message:
Bug 1604619 - Port bug 1574372: Add nsStreamConverter::GetConvertedType(). r=
oops - uploaded the patch before I saw that... amended locally, but not sure it's worth uploading new one?

Anyway. try build kicked off:
https://treeherder.mozilla.org/#/jobs?repo=try-comm-central&revision=63658d54e2ed61678c375b426e6bc76ce1de5584

(forgot to back out my work-in-progress, but shouldn't affect anything)

You go it in before the next merge :-) - Watch out for failures like we can see here:
https://treeherder.mozilla.org/#/jobs?repo=try-comm-central&revision=7f6d9f7e140cb144e5f9d73e94fcb512ef15824f
That's a weird build, it's an artifact build, so it doesn't show the C++ bustage ... and the X1 and X2 oranges may be false.

Version: unspecified → Trunk
You need to log in before you can comment on or make changes to this bug.