Status

RESOLVED FIXED
3 years ago
3 years ago

People

(Reporter: mossop, Unassigned)

Tracking

Trunk
Points:
---

Firefox Tracking Flags

(firefox43 affected)

Details

This looks like another instance of some files not being analyzed for structure at all: there are no context menus in nsComponentManager.cpp, and structural searches for things in it don't work.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1194273
This is not a dupe of 1194372 after all, as fixing that leaves this broken.

Do note that searching for simple callers:ParseManifest does work; it's the qualified search that's broken.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---

Comment 4

3 years ago
(In reply to Dave Townsend [:mossop] from comment #1)
> Likewise looking for the callers of DoRegisterManifest
> (https://dxr.mozilla.org/mozilla-central/
> search?q=%2Bcallers%3A%22DoRegisterManifest%28enum+NSLocationType%2C+class+mo
> zilla%3A%3AFileLocation+%26%2C+_Bool%2C+_Bool%29%22) finds one caller even
> though there are three.

Looks like the second and third callers are under an '#ifdef MOZ_B2G_LOADER' section we're not indexing :-(

Comment 5

3 years ago
(In reply to Dave Townsend [:mossop] from comment #0)
> Searching for the callers for ParseManifest
> (https://dxr.mozilla.org/mozilla-central/
> search?q=%2Bcallers%3A%22ParseManifest%28enum+NSLocationType%2C+class+mozilla
> %3A%3AFileLocation+%26%2C+char+*%2C+_Bool%2C+_Bool%29%22) doesn't return any
> callers, even though we call it here:
> https://dxr.mozilla.org/mozilla-central/source/xpcom/components/
> nsComponentManager.cpp#638

If we run 'Find callers' from the declaration of ParseManifest here: 
https://dxr.mozilla.org/mozilla-central/source/xpcom/components/ManifestParser.h#14
we use a query of
+callers:"ParseManifest(enum NSLocationType, class mozilla::FileLocation &, char *, _Bool, _Bool)"
which returns 0 results.

If we run 'Find callers' from the call site at
https://dxr.mozilla.org/mozilla-central/source/xpcom/components/nsComponentManager.cpp#625
we get the expected one result from a query of
+callers:"ParseManifest(enum NSLocationType, mozilla::FileLocation &, char *, _Bool, _Bool)"

Looks like this time the first query uses 'class mozilla::FileLocation' while the second drops the 'class'.  :-/

Updated

3 years ago
Depends on: 1268205

Comment 6

3 years ago
Fixed by https://github.com/mozilla/dxr/pull/530
Status: REOPENED → RESOLVED
Last Resolved: 3 years ago3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.