Skip to content

font: normal; causes error which quite hard to find #1008

Closed
@timofei-iatsenko

Description

@timofei-iatsenko

Incorrect value in font rule leads to an error which really hard to find.

I'm using clean-css as part of Angular Cli project, and I had to debug it manually to find what part of css cause this error.

Environment

  • clean-css version - 4.1.9:
  • node.js version - v9.6.1:
  • operating system: Windows x64

Configuration options

const cleancss = new CleanCSS({
  compatibility: 'ie9',
  level: 2,
  inline: false,
  returnPromise: true,
});

Input CSS

  div {
      font: normal;
    }

Actual output

c:\projects\meteoguard\node_modules\clean-css\lib\optimizer\level-2\properties\populate-components.js:32
          throw e;
          ^

TypeError: Cannot read property '1' of undefined
    at Object.font [as breakUp] (c:\projects\meteoguard\node_modules\clean-css\lib\optimizer\level-2\break-up.js:308:66)
    at populateComponents (c:\projects\meteoguard\node_modules\clean-css\lib\optimizer\level-2\properties\populate-components.js:17:42)
    at optimizeProperties (c:\projects\meteoguard\node_modules\clean-css\lib\optimizer\level-2\properties\optimize.js:19:3)
    at recursivelyOptimizeProperties (c:\projects\meteoguard\node_modules\clean-css\lib\optimizer\level-2\optimize.js:63:9)
    at level2Optimize (c:\projects\meteoguard\node_modules\clean-css\lib\optimizer\level-2\optimize.js:77:3)
    at optimize (c:\projects\meteoguard\node_modules\clean-css\lib\clean.js:131:5)
    at c:\projects\meteoguard\node_modules\clean-css\lib\clean.js:104:29
    at c:\projects\meteoguard\node_modules\clean-css\lib\reader\read-sources.js:26:64
    at loadOriginalSources (c:\projects\meteoguard\node_modules\clean-css\lib\reader\load-original-sources.js:26:5)
    at c:\projects\meteoguard\node_modules\clean-css\lib\reader\read-sources.js:26:14

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions