{"action":"created","comment":{"url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/comments/62802752","id":62802752,"diff_hunk":"@@ -110,7 +110,10 @@ export abstract class GenericMapper {\n             return {kind: MatchResultKind.FAILED};\n         }\n         else if (GenericMapper.isMapLeaf(node)) {\n-            const map = node as GenericMap;\n+            // make a copy of the node object\n+            const map = Object.assign({}, node) as GenericMap;\n+            // always reinitialize args object\n+            map.args = {};","path":"src/Mappers/Generic.ts","position":8,"original_position":8,"commit_id":"fa721ee8ca2f4d6008c2bf992fd49c5e15e7bfc2","original_commit_id":"fa721ee8ca2f4d6008c2bf992fd49c5e15e7bfc2","user":{"login":"aioutecism","id":2175401,"avatar_url":"https://avatars.githubusercontent.com/u/2175401?v=3","gravatar_id":"","url":"https://api.github.com/users/aioutecism","html_url":"https://github.com/aioutecism","followers_url":"https://api.github.com/users/aioutecism/followers","following_url":"https://api.github.com/users/aioutecism/following{/other_user}","gists_url":"https://api.github.com/users/aioutecism/gists{/gist_id}","starred_url":"https://api.github.com/users/aioutecism/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aioutecism/subscriptions","organizations_url":"https://api.github.com/users/aioutecism/orgs","repos_url":"https://api.github.com/users/aioutecism/repos","events_url":"https://api.github.com/users/aioutecism/events{/privacy}","received_events_url":"https://api.github.com/users/aioutecism/received_events","type":"User","site_admin":false},"body":"This will cause predefined `args` being removed.\r\nThus motions like `t<char>` will not work as expected.","created_at":"2016-05-11T07:33:22Z","updated_at":"2016-05-11T07:33:22Z","html_url":"https://github.com/aioutecism/amVim-for-VSCode/pull/89#discussion_r62802752","pull_request_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89","_links":{"self":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/comments/62802752"},"html":{"href":"https://github.com/aioutecism/amVim-for-VSCode/pull/89#discussion_r62802752"},"pull_request":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89"}}},"pull_request":{"url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89","id":69216485,"html_url":"https://github.com/aioutecism/amVim-for-VSCode/pull/89","diff_url":"https://github.com/aioutecism/amVim-for-VSCode/pull/89.diff","patch_url":"https://github.com/aioutecism/amVim-for-VSCode/pull/89.patch","issue_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues/89","number":89,"state":"open","locked":false,"title":"Bug in `GenericMapper.match` when there are multiple input commands at once","user":{"login":"DanEEStar","id":1432939,"avatar_url":"https://avatars.githubusercontent.com/u/1432939?v=3","gravatar_id":"","url":"https://api.github.com/users/DanEEStar","html_url":"https://github.com/DanEEStar","followers_url":"https://api.github.com/users/DanEEStar/followers","following_url":"https://api.github.com/users/DanEEStar/following{/other_user}","gists_url":"https://api.github.com/users/DanEEStar/gists{/gist_id}","starred_url":"https://api.github.com/users/DanEEStar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanEEStar/subscriptions","organizations_url":"https://api.github.com/users/DanEEStar/orgs","repos_url":"https://api.github.com/users/DanEEStar/repos","events_url":"https://api.github.com/users/DanEEStar/events{/privacy}","received_events_url":"https://api.github.com/users/DanEEStar/received_events","type":"User","site_admin":false},"body":"This bug is hard to explain in words. So I created this pull-request to illustrate it with code.\r\n\r\nI was playing around with some tests to understand the code better. I was \"simulating\" input in my tests. See the `MotionIntegrationTest`.\r\n\r\nThe test did not behave as expected. \r\nThen I did some debugging. The debugging showed that in `Mode` the `map` objects did seem to somehow get overwritten when multiple maps are in the `this.pendings` array.\r\nWhen there where more than one map-object in `this.pendings` they were essentially the same map object (`this.pendings[0] === this.pendings[1]`)\r\n\r\nThe added code in Generic.ts fixes seems to fix this problem. Although I am not 100% sure why I have to do this.\r\n\r\nSo this pull-request is not a complete solution to the problem.\r\nI hope I can help you find the bug and eliminate it!","created_at":"2016-05-06T22:00:48Z","updated_at":"2016-05-11T07:33:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":"61d3e00965b9e0ce21dc5736d46af879edfeaa53","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89/commits","review_comments_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89/comments","review_comment_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/comments{/number}","comments_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues/89/comments","statuses_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/statuses/fa721ee8ca2f4d6008c2bf992fd49c5e15e7bfc2","head":{"label":"DanEEStar:bugfix/motion-copy","ref":"bugfix/motion-copy","sha":"fa721ee8ca2f4d6008c2bf992fd49c5e15e7bfc2","user":{"login":"DanEEStar","id":1432939,"avatar_url":"https://avatars.githubusercontent.com/u/1432939?v=3","gravatar_id":"","url":"https://api.github.com/users/DanEEStar","html_url":"https://github.com/DanEEStar","followers_url":"https://api.github.com/users/DanEEStar/followers","following_url":"https://api.github.com/users/DanEEStar/following{/other_user}","gists_url":"https://api.github.com/users/DanEEStar/gists{/gist_id}","starred_url":"https://api.github.com/users/DanEEStar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanEEStar/subscriptions","organizations_url":"https://api.github.com/users/DanEEStar/orgs","repos_url":"https://api.github.com/users/DanEEStar/repos","events_url":"https://api.github.com/users/DanEEStar/events{/privacy}","received_events_url":"https://api.github.com/users/DanEEStar/received_events","type":"User","site_admin":false},"repo":{"id":55848589,"name":"amVim-for-VSCode","full_name":"DanEEStar/amVim-for-VSCode","owner":{"login":"DanEEStar","id":1432939,"avatar_url":"https://avatars.githubusercontent.com/u/1432939?v=3","gravatar_id":"","url":"https://api.github.com/users/DanEEStar","html_url":"https://github.com/DanEEStar","followers_url":"https://api.github.com/users/DanEEStar/followers","following_url":"https://api.github.com/users/DanEEStar/following{/other_user}","gists_url":"https://api.github.com/users/DanEEStar/gists{/gist_id}","starred_url":"https://api.github.com/users/DanEEStar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanEEStar/subscriptions","organizations_url":"https://api.github.com/users/DanEEStar/orgs","repos_url":"https://api.github.com/users/DanEEStar/repos","events_url":"https://api.github.com/users/DanEEStar/events{/privacy}","received_events_url":"https://api.github.com/users/DanEEStar/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/DanEEStar/amVim-for-VSCode","description":"The Vim mode for Visual Studio Code(vscode) that works as expected.","fork":true,"url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode","forks_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/forks","keys_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/teams","hooks_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/hooks","issue_events_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/issues/events{/number}","events_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/events","assignees_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/assignees{/user}","branches_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/branches{/branch}","tags_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/tags","blobs_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/git/refs{/sha}","trees_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/statuses/{sha}","languages_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/languages","stargazers_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/stargazers","contributors_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/contributors","subscribers_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/subscribers","subscription_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/subscription","commits_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/commits{/sha}","git_commits_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/git/commits{/sha}","comments_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/comments{/number}","issue_comment_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/issues/comments{/number}","contents_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/contents/{+path}","compare_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/merges","archive_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/downloads","issues_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/issues{/number}","pulls_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/pulls{/number}","milestones_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/milestones{/number}","notifications_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/labels{/name}","releases_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/releases{/id}","deployments_url":"https://api.github.com/repos/DanEEStar/amVim-for-VSCode/deployments","created_at":"2016-04-09T14:26:22Z","updated_at":"2016-04-09T14:26:23Z","pushed_at":"2016-05-10T11:30:42Z","git_url":"git://github.com/DanEEStar/amVim-for-VSCode.git","ssh_url":"git@github.com:DanEEStar/amVim-for-VSCode.git","clone_url":"https://github.com/DanEEStar/amVim-for-VSCode.git","svn_url":"https://github.com/DanEEStar/amVim-for-VSCode","homepage":"https://marketplace.visualstudio.com/items/auiworks.amvim","size":346,"stargazers_count":0,"watchers_count":0,"language":"TypeScript","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"aioutecism:master","ref":"master","sha":"0473fbb95ba14f19fa8bf6cd76a9c5c832423986","user":{"login":"aioutecism","id":2175401,"avatar_url":"https://avatars.githubusercontent.com/u/2175401?v=3","gravatar_id":"","url":"https://api.github.com/users/aioutecism","html_url":"https://github.com/aioutecism","followers_url":"https://api.github.com/users/aioutecism/followers","following_url":"https://api.github.com/users/aioutecism/following{/other_user}","gists_url":"https://api.github.com/users/aioutecism/gists{/gist_id}","starred_url":"https://api.github.com/users/aioutecism/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aioutecism/subscriptions","organizations_url":"https://api.github.com/users/aioutecism/orgs","repos_url":"https://api.github.com/users/aioutecism/repos","events_url":"https://api.github.com/users/aioutecism/events{/privacy}","received_events_url":"https://api.github.com/users/aioutecism/received_events","type":"User","site_admin":false},"repo":{"id":47174494,"name":"amVim-for-VSCode","full_name":"aioutecism/amVim-for-VSCode","owner":{"login":"aioutecism","id":2175401,"avatar_url":"https://avatars.githubusercontent.com/u/2175401?v=3","gravatar_id":"","url":"https://api.github.com/users/aioutecism","html_url":"https://github.com/aioutecism","followers_url":"https://api.github.com/users/aioutecism/followers","following_url":"https://api.github.com/users/aioutecism/following{/other_user}","gists_url":"https://api.github.com/users/aioutecism/gists{/gist_id}","starred_url":"https://api.github.com/users/aioutecism/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aioutecism/subscriptions","organizations_url":"https://api.github.com/users/aioutecism/orgs","repos_url":"https://api.github.com/users/aioutecism/repos","events_url":"https://api.github.com/users/aioutecism/events{/privacy}","received_events_url":"https://api.github.com/users/aioutecism/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aioutecism/amVim-for-VSCode","description":"The Vim mode for Visual Studio Code(vscode) that works as expected.","fork":false,"url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode","forks_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/forks","keys_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/teams","hooks_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/hooks","issue_events_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues/events{/number}","events_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/events","assignees_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/assignees{/user}","branches_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/branches{/branch}","tags_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/tags","blobs_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/git/refs{/sha}","trees_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/statuses/{sha}","languages_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/languages","stargazers_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/stargazers","contributors_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/contributors","subscribers_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/subscribers","subscription_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/subscription","commits_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/commits{/sha}","git_commits_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/git/commits{/sha}","comments_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/comments{/number}","issue_comment_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues/comments{/number}","contents_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/contents/{+path}","compare_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/merges","archive_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/downloads","issues_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues{/number}","pulls_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls{/number}","milestones_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/milestones{/number}","notifications_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/labels{/name}","releases_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/releases{/id}","deployments_url":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/deployments","created_at":"2015-12-01T07:58:00Z","updated_at":"2016-05-11T03:40:12Z","pushed_at":"2016-05-10T08:41:30Z","git_url":"git://github.com/aioutecism/amVim-for-VSCode.git","ssh_url":"git@github.com:aioutecism/amVim-for-VSCode.git","clone_url":"https://github.com/aioutecism/amVim-for-VSCode.git","svn_url":"https://github.com/aioutecism/amVim-for-VSCode","homepage":"https://marketplace.visualstudio.com/items/auiworks.amvim","size":351,"stargazers_count":81,"watchers_count":81,"language":"TypeScript","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":15,"mirror_url":null,"open_issues_count":23,"forks":15,"open_issues":23,"watchers":81,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89"},"html":{"href":"https://github.com/aioutecism/amVim-for-VSCode/pull/89"},"issue":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues/89"},"comments":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/issues/89/comments"},"review_comments":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89/comments"},"review_comment":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/pulls/89/commits"},"statuses":{"href":"https://api.github.com/repos/aioutecism/amVim-for-VSCode/statuses/fa721ee8ca2f4d6008c2bf992fd49c5e15e7bfc2"}}}}