Commit graph

21794 commits

Author SHA1 Message Date
Ms2ger
88285b6534 Privatize the chrome_loader module. 2016-11-06 12:18:40 +01:00
Ms2ger
a888f075a1 Privatize the http_loader module. 2016-11-06 12:18:39 +01:00
Ms2ger
697275dea3 Privatize some net modules. 2016-11-06 12:18:37 +01:00
bors-servo
8c35f93343 Auto merge of #14077 - kivikakk:refactor-style-lengths, r=emilio
Refactor style lengths per #13584

<!-- Please describe your changes on the following line: -->
Refactor `components/style/values/{computed,specified}/mod.rs` into `…/length.rs` per #13584.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #13584

<!-- Either: -->
- [x] These changes do not require tests because the existing code should be covered by tests

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14077)
<!-- Reviewable:end -->
2016-11-06 04:08:14 -06:00
bors-servo
dbce416ad4 Auto merge of #14025 - iamrohit7:debug-assertions, r=Wafflespeanut
Add --with-debug-assertions flag for Mach

I tested out building a release with the flag and added a `debug_assert!(false)` in `fn main` and it panicked.
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14009  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are manually tested

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14025)
<!-- Reviewable:end -->
2016-11-05 22:57:44 -05:00
Yuki Izumi
f33f5605ba
Refactor style lengths per #13584 2016-11-06 14:11:37 +11:00
bors-servo
bc9a8f58db Auto merge of #14066 - rjgoldsborough:remove-extra-clones-14062, r=frewsxcv
remove extra clones from dom event script

<!-- Please describe your changes on the following line: -->

fixes #14062 by removing extra clone calls
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14062  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because elements are already copies

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14066)
<!-- Reviewable:end -->
2016-11-05 21:55:33 -05:00
bors-servo
465619ca37 Auto merge of #14082 - dns2utf8:cleanup_14065, r=jdm
Remove unneeded #allow(unsafe_code)

I did #14065

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14065

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14082)
<!-- Reviewable:end -->
2016-11-05 19:51:19 -05:00
Michael Kohler
1985ad6d85 Remove CollectMemoryReports from compositor (fixes #13735) 2016-11-06 01:43:09 +01:00
bors-servo
ac0475971b Auto merge of #13202 - emilio:rule-tree, r=SimonSapin,Manishearth,emilio
Rule tree, v1

<!-- Please describe your changes on the following line: -->
---

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [x] There are tests for these changes OR

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

This patch introduces infrastructure for the rule tree, and constructs it.

We don't use it yet, nor have good heuristics for GC'ing it, but this should not
happen anymore once we store the rule node reference in the node.

I haven't messed up with memory orders because I want to do a try run with it,
then mess with them.

<!-- Reviewable:start -->
---

This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13202)

<!-- Reviewable:end -->
2016-11-05 17:11:24 -05:00
bors-servo
9ab3a24885 Auto merge of #14088 - servo:disable-sigsegv-test, r=KiChjang
Disable sigsegv.html, it’s frequently timing out.

<!-- Please describe your changes on the following line: -->
https://github.com/servo/servo/issues/14067

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14088)
<!-- Reviewable:end -->
2016-11-05 16:19:19 -05:00
Simon Sapin
9f98d2f634 Disable sigsegv.html, it’s frequently timing out.
https://github.com/servo/servo/issues/14067
2016-11-05 22:18:04 +01:00
Jake Goldsborough
c5f562aa07 remove extra clones from dom event script 2016-11-05 13:43:27 -07:00
Eric Anholt
eaec5de184 webgl: Only update FBO status once in framebufferTexture2D().
We update it below after we send the actual FramebufferTexture2D
command to the GL.
2016-11-05 11:49:31 -07:00
Eric Anholt
5e5eb18b0b webgl: Fix out-of-bounds readpixels handling.
This fixes the crash in read-pixels-pack-alignment (which was trying
to read out of bounds).

Fixes #13901
2016-11-05 11:49:30 -07:00
Eric Anholt
9a10666941 webgl: Throw an error on readPixels(width < 0 || height < 0)
Otherwise gleam will try to allocate a negative size area for the
result, and we'll panic with oom.
2016-11-05 11:49:30 -07:00
Eric Anholt
3277c5281c webgl: Validate that framebuffer attachment sizes match.
This is required by the WebGL spec, and we need to figure out the FB
size like this for validating ReadPixels.
2016-11-05 11:49:29 -07:00
Eric Anholt
d77373654a webgl: Update FBO status when textures or RBs are reallocated.
FBO status is supposed to depend on the size of the attachments all
matching, so we need to re-check when it changes.  We don't ensure
matching yet, but this will prevent regressions when we do.
2016-11-05 10:43:12 -07:00
Martin Robinson
ef82d772c1 Don't promote all scrollable regions to stacking contexts
Instead annotate all flows with their owning ScrollRoots. When
processing the display list items into a flattened display list, we add
PushScrollRoot and PopScrollRoot to signal when scrolling regions start
and end. It is possible for content from different scrolling regions to
intersect and when they do, the stack of scrolling regions is
duplicated.  When these duplicated scrolling regions stacks reach
WebRender, it will scroll them in tandem.

The PushScrollRoot and PopScrollRoot items are currently represented as
StackingContexts in WebRender, but eventually these will be replaced
with special WebRender display items.

Fixes #13529.
Fixed #13298.
2016-11-05 18:36:45 +01:00
Eric Anholt
8e681dddc1 webgl: Don't forget to update FBO status after detaching a texture.
We had this in the renderbuffer detach process, but missed it in this
one.
2016-11-05 10:31:41 -07:00
Eric Anholt
bf5a3db745 webgl: Don't update texture attachment state if we throw an error.
If we're going to return from this function without updating the
underlying GL state because of a WebGLError, we shouldn't have updated
our shadow of the GL state.
2016-11-05 10:30:40 -07:00
Eric Anholt
59634cf78e webgl: Track the level with texture attachments.
We need this to be able to get the size of the attached texture for
completeness validation.

Signed-off-by: Eric Anholt <eric@anholt.net>
2016-11-05 10:30:15 -07:00
Stefan Schindler
d2c23942a8 Remove unneeded #allow(unsafe_code) 2016-11-05 17:42:29 +01:00
Eric Anholt
08938499a0 webgl: Add an interface for getting the size of renderbuffers.
We need this for framebuffer status checking.
2016-11-05 09:42:15 -07:00
Simon Sapin
1a18161006 rule tree: more descriptive field names 2016-11-05 17:29:56 +01:00
Simon Sapin
2dd2c9cedd Simplify rule_tree::StyleSourceGuardHandle 2016-11-05 17:29:55 +01:00
Simon Sapin
98bd99b74c rule tree: Remove unsound transmute()
RuleTreeDeclarationsIterator would yield &PropertyDeclaration
with the lifetime of the rule tree, but the reference would only
be valid as long as the iterator was holding the corresponding lock.

The lock would be released when the iterator’s `.next()` method
moves to the next rule tree node, or when  the iterator is dropped.

Also change apply_declaration to not require a `Clone` iterator
(since closures unfortunately don’t implement `Clone`).
Instead have it take a callable that returns a fresh iterator.
2016-11-05 17:29:54 +01:00
Emilio Cobos Álvarez
de4fe6e2b6 Concurrent rule tree, v1
This patch introduces infrastructure for the rule tree, and constructs it.

We don't use it yet, nor have good heuristics for GC'ing it, but this should not
happen anymore once we store the rule node reference in the node.

I haven't messed up with memory orders because I want to do a try run with it,
then mess with them.

Take down the ApplicableDeclarationsCache, use the rule tree for doing the cascade.
2016-11-05 17:29:52 +01:00
Anthony Ramine
1037fecc8b Properly expect a syntax error with :scope selectors in Element.closest 2016-11-05 16:00:25 +01:00
bors-servo
f7875dad1a Auto merge of #14060 - servo:gfx-azure, r=nox
Remove the direct azure dependencies from gfx, layout and layout_thread.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14060)
<!-- Reviewable:end -->
2016-11-05 07:26:30 -05:00
Rohit Burra
76ec3f423a Add --with-debug-assertions flag for Mach 2016-11-05 16:02:40 +05:30
gurudarshan266
e0132b98cc wpt-test for strict-origin and strict-origin-when-cross-origin referrer policy
Fixed rebase issue in ports/cef/Cargo.lock
Deleted PASSing testcases which were failing before implementation of referrer policies
2016-11-05 00:03:24 -04:00
bors-servo
516be8f85c Auto merge of #14074 - glennw:shader-hot-fix, r=pcwalton
Manually copy across a shader fix from WR.

This fix has landed in WR, but WR can't be updated right now, due
to a scroll change landing in WR without the Servo PR being ready
quite yet.

Fixes #14061.
Fixes #14073.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14074)
<!-- Reviewable:end -->
2016-11-04 19:09:35 -05:00
bors-servo
2b4a7b0b7a Auto merge of #14053 - notriddle:flow_ref_unsafe, r=pcwalton
Make `FlowRef` a newtype

This creates a sharp distinction between `Arc<Flow>`s, which may be
owned by anyone, and `FlowRef`s, which may only be owned by the
traversal code. By checking the reference count, we ensure that a `Flow`
cannot be pointed to by `Arc`s and `FlowRef`s simultaneously.

This is not a complete fix for #6503, though it is a necessary start
(enforcing the no-aliasing rule of `FlowRef::deref_mut` will require far
more work).

---

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14014 (github issue number if applicable).
- [X] These changes do not require tests because the existing tests, plus the added assertions, should be sufficient

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14053)
<!-- Reviewable:end -->
2016-11-04 16:53:38 -05:00
Glenn Watson
d62e14f8b1 Manually copy across a shader fix from WR.
This fix has landed in WR, but WR can't be updated right now, due
to a scroll change landing in WR without the Servo PR being ready
quite yet.

Fixes #14061.
Fixes #14073.
2016-11-05 07:37:26 +10:00
Michael Howell
5f320bd2ca Make FlowRef a newtype
This creates a sharp distinction between `Arc<Flow>`s, which may be
owned by anyone, and `FlowRef`s, which may only be owned by the
traversal code. By checking the reference count, we ensure that a `Flow`
cannot be pointed to by `Arc`s and `FlowRef`s simultaneously.

This is not a complete fix for #6503, though it is a necessary start
(enforcing the no-aliasing rule of `FlowRef::deref_mut` will require far
more work).

Fixes #14014
2016-11-04 13:36:04 -07:00
bors-servo
cfef68f92d Auto merge of #14047 - mskrzypkows:getElementsByTagName, r=nox
fix getElementsByTagName()

<!-- Please describe your changes on the following line: -->
Improved implementation of getElementsByTagName() in Document, properly pass 3 cases of https://dom.spec.whatwg.org/#concept-getelementsbytagname

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix  #11596 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14047)
<!-- Reviewable:end -->
2016-11-04 12:41:22 -05:00
Raghav
e0e734fa7f Remove return and resolve merge conflicts
Since last execution statement is the value which is returned, return
keyword has been removed from method strict_origin and
strict_origin_when_cross_origin.

Merge conflicts in Cargo.lock has been handled
2016-11-04 13:27:08 -04:00
Maciej Skrzypkowski
af5d109695 fix getElementsByTagName() 2016-11-04 16:58:19 +01:00
Raghav
26dac98546 Code review comments and upstream merge conflicts
Incorporated code review comments in components/net/http_loader.rs
Resolved merge conflicts in cargo.lock file. Updated ReferrerPolicy in
lib.rs
2016-11-04 11:18:22 -04:00
zakorgyula
e8c1c98a77 Return the same JS object for the same Bluetooth item. 2016-11-04 15:36:57 +01:00
fokinv
d30bcbd339 Blacklisted items are removed when calling getServices/Characteristics/Descriptors. 2016-11-04 15:36:55 +01:00
zakorgyula
dd733f6994 Update the value of the Characteristic/Descriptor when calling writeValue. 2016-11-04 15:36:50 +01:00
zakorgyula
0eeb56b549 Remove not allowed services when calling getPrimaryServices. 2016-11-04 15:36:48 +01:00
fokinv
baa024e362 Return with NotFoundError when the requested deviceName/deviceNamePrefix is longer than 29 bytes. 2016-11-04 15:36:47 +01:00
fokinv
98f2233f2d Return with NotFoundError insted of TypeError, when adapter is not found. 2016-11-04 15:36:44 +01:00
zakorgyula
4ed461c6e5 Accepting empty deviceName, when requesting a BluetoothDevice. 2016-11-04 15:36:42 +01:00
zakorgyula
2b4829b89a Removing uuids field from BluetoothDevice with the related test cases. 2016-11-04 15:22:50 +01:00
zakorgyula
b72dcf326b Check if the BluetoothDevice is connected, when calling getGATT functions. 2016-11-04 15:22:48 +01:00
zakorgyula
11dbb7120f Return with InvalidStateError if a Bluetooth id is not cached. 2016-11-04 15:22:46 +01:00