Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Media Queries: fix parsing of media-condition | John-Mark Bell | 2019-03-10 | 1 | -5/+6 |
| | |||||
* | Tests: fix illegal display value test. | John-Mark Bell | 2019-03-10 | 1 | -1/+1 |
| | | | | | | | | | Recovery from malformed property values involves matching the various nesting mechanisms. Thanks to the bug in the parseAny state machine, this code was never run. The test data contained mismatched open parentheses, causing the recovery logic to continue reading until EOF. Fix the test input to match the expectations of the test assertions. | ||||
* | Parse: only emit start ruleset if there's a brace | John-Mark Bell | 2019-03-10 | 1 | -11/+20 |
| | |||||
* | Parse: fix handling of EOF | John-Mark Bell | 2019-03-10 | 1 | -8/+20 |
| | |||||
* | Parse: maintain stack of brackets in parseAny | John-Mark Bell | 2019-03-10 | 1 | -7/+7 |
| | |||||
* | Parse: fix broken state transition in parseAny | John-Mark Bell | 2019-03-10 | 1 | -2/+2 |
| | |||||
* | Parse: fix dump of tokens with interned strings | John-Mark Bell | 2019-03-10 | 1 | -1/+5 |
| | |||||
* | HACKS for testing Media Queries parsing. | Michael Drake | 2019-03-10 | 4 | -1/+131 |
| | | | | | | | | | | | Top level stylesheets need to have their media query passed in. So we need a way to parse standalone media queries. This was hacked together to explore doing that. However, it encounteded an issue where it seems the parseAtRule() function in src/parse/parse.c doesn't handle the full grammar for media queries. | ||||
* | Media Queries: Parse only needs propstrings out of css_language. | Michael Drake | 2019-03-10 | 3 | -54/+62 |
| | |||||
* | Media Queries: API for stylesheet import doesn't take media now. | Michael Drake | 2019-03-10 | 2 | -6/+2 |
| | |||||
* | Media Queries: Update stylesheet import for media query lists. | Michael Drake | 2019-03-10 | 1 | -2/+4 |
| | |||||
* | Media Queries: Update rule_good_for_media for new mq struct. | Michael Drake | 2019-03-10 | 1 | -6/+44 |
| | | | | | Doesn't currently match media query conditions, only the media type. | ||||
* | Media Queries: Store type as value, rather than lwc_string. | Michael Drake | 2019-03-10 | 2 | -4/+60 |
| | | | | | | Otherwise we need to convert it in selection, and select/ doesn't have access to the css_language interned strings table. | ||||
* | Media Queries: Fix range parsing. | Michael Drake | 2019-03-10 | 1 | -1/+1 |
| | |||||
* | Media Queries: Client media specification structure. | Michael Drake | 2019-03-10 | 1 | -0/+126 |
| | |||||
* | Code style: Use spaces for alignment. | Michael Drake | 2019-03-10 | 1 | -4/+4 |
| | |||||
* | Media Queries: Add error-path resource cleanup. | Michael Drake | 2019-03-10 | 1 | -28/+16 |
| | |||||
* | Media Queries: Add destruction functions. | Michael Drake | 2019-03-10 | 2 | -1/+58 |
| | |||||
* | Documentation: Add new units to bytecode docs. | Michael Drake | 2019-03-10 | 1 | -0/+9 |
| | |||||
* | Media Queries: Implement parsing <general-enclosed>. | Michael Drake | 2019-03-10 | 1 | -1/+98 |
| | |||||
* | Media Queries: Squash invalid use of unused variable warning. | Michael Drake | 2019-03-10 | 1 | -1/+2 |
| | | | | error: ‘last’ may be used uninitialized in this function [-Werror=maybe-uninitialized] | ||||
* | Media Queries: Add forward declaration of mq_parse_condition. | Michael Drake | 2019-03-10 | 1 | -0/+4 |
| | |||||
* | Media Queries: mq_parse_ratio doesn't need language object. | Michael Drake | 2019-03-10 | 1 | -5/+5 |
| | |||||
* | Media Queries: Minor fixes. | Michael Drake | 2019-03-10 | 1 | -4/+5 |
| | |||||
* | Strings: Add 'infinite'. | Michael Drake | 2019-03-10 | 2 | -1/+2 |
| | |||||
* | Media Queries: Include string.h for memset. | Michael Drake | 2019-03-10 | 1 | -0/+2 |
| | |||||
* | Media Queries: Include stylesheet.h for css_style. | Michael Drake | 2019-03-10 | 1 | -0/+1 |
| | |||||
* | Media Queries: remainder of parser | John-Mark Bell | 2019-03-10 | 2 | -80/+351 |
| | |||||
* | Propstrings: add AND, ONLY, OR | John-Mark Bell | 2019-03-10 | 2 | -1/+4 |
| | |||||
* | Media Queries: parse features | John-Mark Bell | 2019-03-10 | 2 | -4/+452 |
| | |||||
* | Units: parse new unit names | John-Mark Bell | 2019-03-10 | 2 | -1/+15 |
| | |||||
* | Media Queries: sort out object lifetimes | John-Mark Bell | 2019-03-10 | 3 | -18/+18 |
| | |||||
* | Media Queries: datastructures and plumbing. | John-Mark Bell | 2019-03-10 | 7 | -109/+233 |
| | | | | | | | | | | | | | No parse implementation as yet. Selection hasn't been updated, either. One item of note in that area is that a client currently provides the media for top-level sheets being added to a selection context. This probably needs to change to providing a lwc_string containing the verbatim media query from the containing document's import mechanism. That way, the internal representation of media queries can remain opaque to clients. | ||||
* | Update component version for releaserelease/0.8.0 | Vincent Sanders | 2018-08-22 | 1 | -1/+1 |
| | |||||
* | Select generator: Squash undefined behaviour in generated code. | Michael Drake | 2018-07-28 | 4 | -603/+621 |
| | | | | | | | uint8_t is promoted to int instead of unsigned, so it can't hold the values we try to store. Reran `make select_generator` to update generated code. | ||||
* | Tests: Passing NULL to memcmp is undefined. | Michael Drake | 2018-07-28 | 1 | -1/+2 |
| | | | | test/parse2-auto.c:222:39: runtime error: null pointer passed as argument 2, which is declared to never be null | ||||
* | Fixed point: Squash undefined shift error. | Michael Drake | 2018-07-28 | 1 | -1/+1 |
| | | | | /include/libcss/fpmath.h:86:29: runtime error: left shift of negative value -1 | ||||
* | Fixed point: Squash undefined left shift of -ve value error. | Michael Drake | 2018-07-28 | 1 | -1/+1 |
| | | | | include/libcss/fpmath.h:60:27: runtime error: left shift of negative value -2611200 | ||||
* | Parsing: Fix undefined shift in css__parse_hash_colour. | Michael Drake | 2018-07-28 | 1 | -2/+2 |
| | | | | | | | | | | uint a = 0xff; a << 24 `a` gets promoted to int, which can't store the value. src/parse/properties/utils.c:655:16: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' src/parse/properties/utils.c:889:15: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' | ||||
* | Tests: Fix undefined behaviour in css_fixed printing. | Michael Drake | 2018-07-28 | 1 | -1/+1 |
| | | | | test/number.c:137:22: runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself | ||||
* | css_fixed: Avoid undefined shift. | Michael Drake | 2018-07-28 | 1 | -1/+1 |
| | | | | | | From undefined behaviour sanitizer: src/utils/utils.c:130:18: runtime error: left shift of negative value -1 | ||||
* | Selection: Unify rule good for media helper. | Michael Drake | 2018-07-27 | 3 | -62/+54 |
| | |||||
* | Build: Commit generated computed style access source code. | Michael Drake | 2018-01-06 | 6 | -6/+5259 |
| | | | | | | | | This means python3 is not required to build libcss. To re-generate the compute style access code, e.g. when adding new CSS properties, developers must run `make select_generator` and commit the updated generated source code. | ||||
* | Merge branch 'tlsa/lcneves/select-autogen' | Michael Drake | 2018-01-05 | 20 | -5281/+3924 |
|\ | |||||
| * | Selection: Autogenerated propset: Fix release of previous strings. | Michael Drake | 2017-11-25 | 1 | -2/+2 |
| | | |||||
| * | Selection: Content prop, use CSS_CONTENT_SET as condition for generator. | Michael Drake | 2017-11-25 | 1 | -1/+1 |
| | | |||||
| * | Select: Bug fixes in the generator.lcneves/select-autogen | Lucas Neves | 2017-11-19 | 2 | -18/+17 |
| | | |||||
| * | Tests: add tests for new length units. | Lucas Neves | 2017-11-13 | 5 | -0/+2550 |
| | | |||||
| * | Add support for new length units. | Lucas Neves | 2017-11-13 | 5 | -20/+98 |
| | | |||||
| * | Select: include autogenerated content in header files. | Lucas Neves | 2017-11-13 | 3 | -5261/+3 |
| | |