Index: third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js b/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
index 620a238a5a48a276a491d2fe13a655aa5bdfd77e..4f48255e04cf4a756dc6445270a672ac03be95fd 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
+++ b/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
@@ -98,9 +98,10 @@ Bindings.CSSWorkspaceBinding.ModelInfo = class { |
cssModel.addEventListener(SDK.CSSModel.Events.StyleSheetRemoved, this._styleSheetRemoved, this) |
]; |
+ this._workspace = workspace; |
+ var networkProject = Bindings.NetworkProject.forTarget(cssModel.target()); |
this._stylesSourceMapping = new Bindings.StylesSourceMapping(cssModel, workspace); |
- this._sassSourceMapping = |
- new Bindings.SASSSourceMapping(cssModel, workspace, Bindings.NetworkProject.forTarget(cssModel.target())); |
+ this._sassSourceMapping = new Bindings.SASSSourceMapping(cssModel, workspace, networkProject); |
/** @type {!Multimap<!SDK.CSSStyleSheetHeader, !Bindings.CSSWorkspaceBinding.LiveLocation>} */ |
this._locations = new Multimap(); |
@@ -182,7 +183,16 @@ Bindings.CSSWorkspaceBinding.ModelInfo = class { |
var uiLocation = null; |
uiLocation = uiLocation || this._sassSourceMapping.rawLocationToUILocation(rawLocation); |
uiLocation = uiLocation || this._stylesSourceMapping.rawLocationToUILocation(rawLocation); |
- return uiLocation; |
+ if (uiLocation) |
+ return uiLocation; |
+ |
+ var header = rawLocation.header(); |
+ if (!header) |
+ return null; |
+ var uiSourceCode = Bindings.NetworkProject.uiSourceCodeForStyleURL(this._workspace, rawLocation.url, header); |
+ if (!uiSourceCode) |
+ return null; |
+ return uiSourceCode.uiLocation(rawLocation.lineNumber, rawLocation.columnNumber); |
} |
_dispose() { |