- Sep 08, 2017
-
-
Steve Fink authored
--HG-- extra : rebase_source : 0ea91eb0373a1b0c848ce7e97f43a2006c190f29
-
Steve Fink authored
Bug 1400442 - Targeted annotation for static local array of member pointers in LangGroupFontPrefs::Initialize, r=bhackett The code is void LangGroupFontPrefs::Initialize(nsIAtom* aLangGroupAtom) { nsFont* fontTypes[] = { &mDefaultVariableFont, &mDefaultFixedFont, &mDefaultSerifFont, &mDefaultSansSerifFont, &mDefaultMonospaceFont, &mDefaultCursiveFont, &mDefaultFantasyFont }; nsFont* font = fontTypes[3]; font->size = 42; } 'this' is known to be a safe pointer (exclusively owned by the current thread), so a pointer to one of its members is also safe. But the analysis can't track safety across all that, so I have a special-case annotation here that says that fontTypes[3] returns a safe pointer if and only if 'this' is safe. Note that all of those fields (eg mDefaultVariableFont) are nsFont structs, not pointers, so although you'd expect this to be one dereference away from a safe pointer's memory, it is not; assigning to font->size ends up being a write to some offset within the 'this' pointer, which is known to be safe here. --HG-- extra : rebase_source : 60bf982911b8a66bc612cb5c7eeb04ec766ecf70
-
Steve Fink authored
--HG-- extra : rebase_source : 206bba89c68e8dc37c135fed03490282eff61d76
-
- Aug 31, 2017
-
-
Steve Fink authored
--HG-- extra : rebase_source : 187dda47209195746d88a00733d9b806da2c4f14
-
- Sep 16, 2017
-
-
Steve Fink authored
--HG-- extra : rebase_source : ca41fae3c6f0507ed0be567ca5cd641e59475c8b
-
- Aug 31, 2017
-
-
Steve Fink authored
--HG-- extra : rebase_source : 950699da0c0d8c894542c71881cce3359a8c6697
-
- Sep 01, 2017
-
-
Steve Fink authored
--HG-- extra : rebase_source : 1cf32c7b383b2f2e8bbe44f8d09cb027b086ebbf
-
- Aug 09, 2017
-
-
Steve Fink authored
--HG-- extra : rebase_source : de700225cbfcfc4a3fad56327d9007eabff02859
-
- Sep 08, 2017
-
-
Steve Fink authored
Bug 1400466 - Cache the information loaded from src_comp.xdb into a structured clone buffer, r=jonco Note that this requires some enhancements to the JS engine to support reading and writing structured clone data from/to files. --HG-- extra : rebase_source : 444a2d407bd231efbba4b6b648eeb151f02177db
-
Steve Fink authored
Bug 1400466 - Implement minimum necessary to allow saving and loading structured clone data, r=jonco --HG-- extra : rebase_source : ea13ebcc1b3958c99cf04e7345da1aab5536b0ee
-
- Sep 19, 2017
-
-
Tim Taubert authored
I wasn't sure what the right behavior for the U2F API is when `.sign()` or `.register()` is called but there's an ongoing request that wasn't fulfilled yet. I think it makes sense to deny the request (as we currently do) when a request of the same type is currently active. When however sign() -> register() or vice-versa is called then we should cancel the previous request and start the new one. From what I understand from reading the spec we definitely should call the callback before starting the new request. Bug #: 1401019 Differential Revision: https://phabricator.services.mozilla.com/D70
-
Tim Taubert authored
-
Boris Zbarsky authored
This is a preexisting issue that makes nsMultiplexInputStream multiple-inherit from nsIInputStream: once via nsIMultipartInputStream and once via nsIAsyncInputStream. This causes problems once we end up with more multiplex streams that are async streams, because then some assingments to nsCOMPtr<nsIInputStream> start asserting. This patch just removes the footgun by getting rid of the multiple inheritance.
-
Sebastian Hengst authored
Backed out changeset 3c9e25405f59 (bug 1401204) an request from baku for landing with wrong bug number. r=backout
-
- Jun 11, 2017
-
-
Boris Zbarsky authored
This is a preexisting issue that makes nsMultiplexInputStream multiple-inherit from nsIInputStream: once via nsIMultipartInputStream and once via nsIAsyncInputStream. This causes problems once we end up with more multiplex streams that are async streams, because then some assingments to nsCOMPtr<nsIInputStream> start asserting. This patch just removes the footgun by getting rid of the multiple inheritance.
-
- Sep 19, 2017
-
-
Boris Zbarsky authored
Bug 1400898 part 4. Get rid of nsIDOMChromeWindow methods that are unused from C++, and mark the rest [noscript]. r=farre MozReview-Commit-ID: GtYmfg6XiaQ
-
Boris Zbarsky authored
C++ code only reads this attribute. Code that sets it comes via WebIDL bindings. MozReview-Commit-ID: 2itFAxUVTBo
-
Boris Zbarsky authored
MozReview-Commit-ID: 4FuJSgha5y3
-
Boris Zbarsky authored
MozReview-Commit-ID: I31eceiJP55
-
Sebastian Hengst authored
-
Tim Taubert authored
The runloop seems like a good candidate for moving into its own crate. I wasn't sure whether we want it under the Mozilla org on GitHub, so I pushed it to ttaubert/rust-runloop for a start. Moving the repository to mozilla/* is easy, and we'd just need to bump the crate version with the updated repository, if you think we should. Bug #: 1400559 Differential Revision: https://phabricator.services.mozilla.com/D62 --HG-- rename : dom/webauthn/u2f-hid-rs/src/runloop.rs => third_party/rust/runloop/src/lib.rs
-
Ekanan Ketunuti authored
-
Vedant Chakravadhanula authored
-
Nick Thomas authored
MozReview-Commit-ID: BjU6A9pOpKE --HG-- extra : amend_source : df945e1a1c60ed7973079b82ddeddadb79696ebd
-
- Sep 15, 2017
-
-
Nicolas Silva authored
-
- Sep 19, 2017
-
-
Andrew Osmond authored
Currently if SourceSurfaceVolatileData::Map fails due to being purged, we expect that the surface will be discarded by the caller. This has not consistently been the case, and as such, we should ensure we do not forget if a buffer was previously purged when we reacquire it. Since we do not at this time support repopulating an already allocated buffer with new data, we cannot reset this state once it has been set.
-
Andrew Osmond authored
Bug 1380649 - Part 1. Ensure SurfaceCache::CollectSizeOfSurfaces removes purged volatile buffer-backed surfaces. r=tnikkel When we lookup a surface in the cache, we are careful to remove any surfaces which were backed by volatile memory and got purged before we could reacquire the buffer. We were not so careful in doing that when generating memory reports. ISurfaceProvider::AddSizeOfExcludingThis will cause us to acquire the buffer, and if it was purged, forget about its purged status. Later when we performed a lookup, we would forget the purged status, and assume we have the right data. This would appear as completely transparent for BGRA surfaces, and completely black for BGRX surfaces. With this patch, we now properly remove purged surfaces instead of including them in the report. This ensures that the cache state is consistent. This also resolves memory reports of surfaces which reported using no data -- they were purged when the report was generated. Additionally, there was a bug in SurfaceCache::PruneImage where we did not discard surfaces outside the module lock. Both PruneImage and CollectSizeOfSurfaces now free any discarded surfaces outside the lock.
-
Jon Coppeard authored
-
Jon Coppeard authored
-
Jon Coppeard authored
Bug 1396613 - Make proxy objects override handler's objectMoved method rather than using class hook r=sfink r=mccr8 r=peterv
-
Jon Coppeard authored
-
Jon Coppeard authored
Bug 1396613 - Update the object moved hook to allow it to be called when tenuring nursery objects r=sfink r=mccr8
-
Gabor Krizsanits authored
-
- Sep 14, 2017
-
-
Jan de Mooij authored
-
- Sep 19, 2017
-
-
Sebastian Hengst authored
-
Sebastian Hengst authored
MozReview-Commit-ID: gZsJeZjJjm
-
Sebastian Hengst authored
Backed out changeset d4f5756b1d12 (bug 1380649) for frequently asserting at image/SurfaceCache.cpp:138. r=backout
-
Sebastian Hengst authored
-
Ralph Giles authored
One cannot use #[cfg(target_os)] checks in build.rs. Build scripts can be used to generate code so the target is set to the host platform when they are compiled. Having this setting exported an unconditional link depencency whenever the host was macOS, which broke cross-compiling, in particular for fennec builds targetting Android. Instead, declare the IOKit dependency on the `extern` block which imports the symbol inside macOS-specific code. That way final link still works, but the extra dependency is only enabled when appropriate for the final target, like the other platform-dependent code.
-
Michal Novotny authored
-