File tree Expand file tree Collapse file tree 2 files changed +16
-4
lines changed Expand file tree Collapse file tree 2 files changed +16
-4
lines changed Original file line number Diff line number Diff line change @@ -69,7 +69,7 @@ export function isMediaBrowserhack(prelude) {
6969 return this . break
7070 }
7171 } else if ( node . type === MediaFeature ) {
72- if ( value !== null && value . unit === '\\0' ) {
72+ if ( value && value . unit && value . unit === '\\0' ) {
7373 returnValue = true
7474 return this . break
7575 }
@@ -81,15 +81,14 @@ export function isMediaBrowserhack(prelude) {
8181 return this . break
8282 }
8383 else if ( strEquals ( 'min-resolution' , name )
84- && strEquals ( '.001' , value . value )
84+ && value && strEquals ( '.001' , value . value )
8585 && strEquals ( 'dpcm' , value . unit )
8686 ) {
8787 returnValue = true
8888 return this . break
8989 }
9090 else if ( strEquals ( '-webkit-min-device-pixel-ratio' , name ) ) {
91- let val = value . value
92- if ( ( strEquals ( '0' , val ) || strEquals ( '10000' , val ) ) ) {
91+ if ( value && value . value && ( strEquals ( '0' , value . value ) || strEquals ( '10000' , value . value ) ) ) {
9392 returnValue = true
9493 return this . break
9594 }
Original file line number Diff line number Diff line change @@ -580,6 +580,19 @@ AtRules('finds @media browserhacks', () => {
580580 assert . equal ( actual , expected )
581581} )
582582
583+ AtRules ( 'does not crash on incomplete @media queries' , ( ) => {
584+ let css = `
585+ @media (min-width) {}
586+ @media (-moz-images-in-menus) {}
587+ @media (min--moz-device-pixel-ratio) {}
588+ @media (-ms-high-contrast), (-ms-high-contrast) {}
589+ @media (min-resolution) {}
590+ @media (-webkit-min-device-pixel-ratio) {}
591+ `
592+
593+ assert . not . throws ( ( ) => analyze ( css ) )
594+ } )
595+
583596AtRules ( 'analyzes @keyframes' , ( ) => {
584597 const fixture = `
585598 @keyframes one {}
You can’t perform that action at this time.
0 commit comments