Bug 1534786 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

It's possible to pause at a breakpoint today and not see the breakpoint in the UI.

I think it happens because

1. on debugger open we set all of the pending breakpoint generated locations
2. later when we check pending breakpoints in newSource, we only handle it if there is a matching source. this is a problem in source maps where there IS a pending breakpoint with a valid generated locaton, but invalid original location
here is a good case study:

```{
    "options": {
      "condition": null,
      "logValue": null,
      "hidden": false
    },
    "disabled": false,
    "location": {
      "sourceUrl": "webpack:////Users/jlaster/src/moz/debugger.html/src/actions/pause/paused.js",
      "line": 45,
      "column": 29
    },
    "astLocation": {
      "name": "paused",
      "offset": {
        "line": 14
      },
      "index": 0
    },
    "generatedLocation": {
      "sourceUrl": "http://localhost:8000/assets/build/debugger.js",
      "line": 100900,
      "column": 30
    }
  },```

I added this breakpoint WHEN debugging in github
now this bp gets set when i'm debugging in gecko-dev
but, the original file has a different path
`"webpack:////Users/jlaster/src/moz/gecko-dev/devtools/client/debugger/new/src/actions/pause/paused.js"`
as a result, we SET this breakpoint in the server and pause, but we don't

a) show the beakpoint anywhere
b) clear the breakpoint
It's possible to pause at a breakpoint today and not see the breakpoint in the UI.

I think it happens because

1. on debugger open we set all of the pending breakpoint generated locations
2. later when we check pending breakpoints in newSource, we only handle it if there is a matching source. this is a problem in source maps where there IS a pending breakpoint with a valid generated locaton, but invalid original location
here is a good case study:

```{
    "options": {
      "condition": null,
      "logValue": null,
      "hidden": false
    },
    "disabled": false,
    "location": {
      "sourceUrl": "webpack:////Users/jlaster/src/moz/debugger.html/src/actions/pause/paused.js",
      "line": 45,
      "column": 29
    },
    "astLocation": {
      "name": "paused",
      "offset": {
        "line": 14
      },
      "index": 0
    },
    "generatedLocation": {
      "sourceUrl": "http://localhost:8000/assets/build/debugger.js",
      "line": 100900,
      "column": 30
    }
  },
```

I added this breakpoint WHEN debugging in github
now this bp gets set when i'm debugging in gecko-dev
but, the original file has a different path
`"webpack:////Users/jlaster/src/moz/gecko-dev/devtools/client/debugger/new/src/actions/pause/paused.js"`
as a result, we SET this breakpoint in the server and pause, but we don't

a) show the beakpoint anywhere
b) clear the breakpoint

Back to Bug 1534786 Comment 0