Open Bug 2084918 Opened 23 days ago Updated 21 days ago

installer.nsi uses the stub-only WARN_MIN_SUPPORTED_OSVER_*_MSG2 strings, causing makensis warning 6040

Categories

(Firefox :: Installer, defect, P3)

Unspecified
Windows
defect

Tracking

()

ASSIGNED
Tracking Status
firefox-esr115 --- unaffected
firefox-esr153 --- wontfix
firefox158 --- wontfix
firefox159 --- wontfix
firefox160 --- wontfix
firefox161 --- fix-optional

People

(Reporter: mferreiro, Assigned: spohl, NeedInfo)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression, Whiteboard: [FIDE-engagement])

Attachments

(1 external file)

Since bug 2000740, installer.nsi (the full installer, setup.exe) uses WARN_MIN_SUPPORTED_OSVER_MSG2 and WARN_MIN_SUPPORTED_OSVER_CPU_MSG2. Those strings are only defined in nsisstrings.properties, which becomes nsisstrings.nlf and is only included by the stub installer (stub.nsh). The full installer loads its strings from custom.properties, which still has the older WARN_MIN_SUPPORTED_OSVER_MSG and WARN_MIN_SUPPORTED_OSVER_CPU_MSG, now unused.

As a result, when the full installer runs on Windows 8.1 or older, on a CPU without SSE2, or on an unsupported architecture, its error message box is empty. The same applies to the message passed to InstallOnInitCommon.

makensis reports it as warning 6040 when building setup.exe:

warning 6040: LangString "WARN_MIN_SUPPORTED_OSVER_CPU_MSG2" is not set in language table of language baseLocale

This blocks treating NSIS warnings as errors in bug 2084061.

Severity: -- → S4

Set release status flags based on info from the regressing bug 2000740

:juliana, since you are the author of the regressor, bug 2000740, could you take a look?

For more information, please visit BugBot documentation.

The only change bug 2000740 made to installer.nsi was renaming the five references in .onInit (lines 1592, 1594, 1611, 1616 and the ${InstallOnInitCommon} argument at 1630) to the *_MSG2 IDs, which exist only in the stub's nsisstrings.properties. The full installer includes customLocale.nsh, generated from custom.properties, and never nsisstrings.nlf, so the unsupported-OS and wrong-architecture message boxes come up empty.

Fix: Point those five references back at WARN_MIN_SUPPORTED_OSVER_CPU_MSG and WARN_MIN_SUPPORTED_OSVER_MSG, which is what they were before 4e84278395c8, and leave stub.nsh and test_stub.nsi on *_MSG2; no string changes are needed. No test builds setup.exe, so the check is that makensis no longer emits warning 6040.

Suggested severity: S4. Only users running the full installer on Windows 8.1 or older, a non-SSE2 CPU, or the wrong architecture see an empty error dialog, and the install is refused in those cases anyway.


If you'd like to provide feedback on this comment, please use the 👍 or 👎 reaction.
If you want to categorize your feedback you can add one of the following tags: ai-triage-{wrong-file, wrong-cause, hallucination, out-of-scope, not-a-bug, wrong-fix, shallow-fix, wrong-severity}.

Needinfo hackbot@mozilla.tld to have a patch generated for this bug, include any questions or directions as needed in your comment.

See Also: → 2085240
Assignee: nobody → spohl.mozilla.bugs
Status: NEW → ASSIGNED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: