{"action":"reopened","issue":{"url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6580","repository_url":"https://api.github.com/repos/devtools-html/debugger.html","labels_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6580/labels{/name}","comments_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6580/comments","events_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6580/events","html_url":"https://github.com/devtools-html/debugger.html/issues/6580","id":337058059,"node_id":"MDU6SXNzdWUzMzcwNTgwNTk=","number":6580,"title":"[Breakpoints] Breakpoint changes its place on page refresh","user":{"login":"VillageHats","id":3983721,"node_id":"MDQ6VXNlcjM5ODM3MjE=","avatar_url":"https://avatars2.githubusercontent.com/u/3983721?v=4","gravatar_id":"","url":"https://api.github.com/users/VillageHats","html_url":"https://github.com/VillageHats","followers_url":"https://api.github.com/users/VillageHats/followers","following_url":"https://api.github.com/users/VillageHats/following{/other_user}","gists_url":"https://api.github.com/users/VillageHats/gists{/gist_id}","starred_url":"https://api.github.com/users/VillageHats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/VillageHats/subscriptions","organizations_url":"https://api.github.com/users/VillageHats/orgs","repos_url":"https://api.github.com/users/VillageHats/repos","events_url":"https://api.github.com/users/VillageHats/events{/privacy}","received_events_url":"https://api.github.com/users/VillageHats/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-06-29T16:15:24Z","updated_at":"2018-06-29T21:10:29Z","closed_at":null,"author_association":"NONE","body":"User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:62.0) Gecko/20100101 Firefox/62.0\r\nBuild ID: 20180625141512\r\n\r\nSteps to reproduce:\r\n```javascript\r\na = {\r\n    sameName: () => {\r\n        return 1; /* After refresh breakpoint is now set on this line instead. */\r\n    }\r\n}\r\nb = {\r\n    sameName: () => {\r\n        return 42; /* Set breakpoint here and refresh.*/\r\n    }\r\n}\r\n```\r\n1. Set breakpoint on line with 'return 42'\r\n2. Refresh page\r\n\r\n\r\n\r\nActual results:\r\n\r\nBreakpoint is now set on line with 'return 1'.\r\n\r\n\r\nExpected results:\r\n\r\nBreakpoint should stay where it was set.\r\n\r\nThis happens when two or more methods have the same name even when they are part of different objects. \r\nIf I had to guess debugger stores breakpoint line numbers as an offset from the line where method is defined. Then on refresh it finds the first time this method's name appears and sets the breakpoint with that offset there disregarding that there could be more than one method in the code with such name.\r\n\r\n"}}
{"actor":{"display_login":"bomsy"}}