{"action":"opened","number":3274,"pull_request":{"url":"https://api.github.com/repos/mono/mono/pulls/3274","id":77293756,"html_url":"https://github.com/mono/mono/pull/3274","diff_url":"https://github.com/mono/mono/pull/3274.diff","patch_url":"https://github.com/mono/mono/pull/3274.patch","issue_url":"https://api.github.com/repos/mono/mono/issues/3274","number":3274,"state":"open","locked":false,"title":"Fix Path.GetFullPath for roots on Windows","user":{"login":"joncham","id":260892,"avatar_url":"https://avatars.githubusercontent.com/u/260892?v=3","gravatar_id":"","url":"https://api.github.com/users/joncham","html_url":"https://github.com/joncham","followers_url":"https://api.github.com/users/joncham/followers","following_url":"https://api.github.com/users/joncham/following{/other_user}","gists_url":"https://api.github.com/users/joncham/gists{/gist_id}","starred_url":"https://api.github.com/users/joncham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joncham/subscriptions","organizations_url":"https://api.github.com/users/joncham/orgs","repos_url":"https://api.github.com/users/joncham/repos","events_url":"https://api.github.com/users/joncham/events{/privacy}","received_events_url":"https://api.github.com/users/joncham/received_events","type":"User","site_admin":false},"body":"On Windows, xbuild can fail with the somewhat obscure error message: \"error : Error building target GetReferenceAssemblyPaths: UNC paths should be of the form \\\\server\\share.\" This occurs because a call to Path.GetFullPath(@\"\\\") returns the string \"\\\" on Windows, when it should return a root path that includes the drive letter, like \"C:\\\".\r\n\r\nThe code in xbuild tries to scan directories for files. Specifically, it looks for \"\\.*dll\". If any .dll files exist in the root directory, each will be returned with the path \"/\\foo.dll\". This path is used to create a FileInfo, and the exception about a UNC path occurs.\r\n\r\nSo if the path is \"\\\" or \"/\" Path.GetFullPath should return the correct root path, including the drive letter, on Windows.\r\n\r\nHere is the full call stack from xbuild:\r\n\r\nError building target GetReferenceAssemblyPaths: System.ArgumentException: UNC paths should be of the form \\\\server\\share.\r\nat System.IO.Path.InsecureGetFullPath (System.String path) <0x25343f0 + 0x003fb> in <filename unknown>:0\r\nat System.IO.Path.GetFullPath (System.String path) <0x2534378 + 0x00013> in <filename unknown>:0\r\nat System.IO.FileInfo..ctor (System.String fileName) <0x25fae20 + 0x00033> in <filename unknown>:0\r\nat (wrapper remoting-invoke-with-check) System.IO.FileInfo:.ctor (string)\r\nat System.IO.DirectoryInfo.GetFiles (System.String searchPattern) <0x25fa7c0 + 0x00087> in <filename unknown>:0\r\nat (wrapper remoting-invoke-with-check) System.IO.DirectoryInfo:GetFiles (string)\r\ninput, Int32 ptr, System.IO.DirectoryInfo directory, Boolean recursive) <0x25fa2b0 + 0x0016b> in <filename unknown>:0\r\ninput, Int32 ptr, System.IO.DirectoryInfo directory) <0x25fa270 + 0x0002f> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.DirectoryScanner.ProcessInclude (ITaskItem include_item, System.Collections.Generic.Dictionary`2 excludedItems, System.Collections.Generic.List`1 includedItems) <0x25d72d0 + 0x002ab> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.DirectoryScanner.Scan () <0x25d70e0 + 0x000ff> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.BuildItem.Evaluate (Microsoft.Build.BuildEngine.Project project, Boolean evaluatedTo) <0x25d5a50 + 0x005d3> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.BuildTaskItem.Execute () <0x25e5ad8 + 0x0002b> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.TaskBatchingImpl.Execute (IBuildTask buildTask, TaskExecutionMode taskExecutionMode) <0x25e3698 + 0x0004a> in <filename unknown>:0\r\nat Microsoft.Build. BuildEngine.TaskBatchingImpl.Run (IBuildTask buildTask, TaskExecutionMode taskExecutionMode, System.Boolean& executeOnErrors) <0x25e50e0 + 0x0004f> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.TaskBatchingImpl.Build (IBuildTask buildTask, TaskExecutionMode taskExecutionMode, System.Boolean& executeOnErrors) <0x25e21b0 + 0x00097> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.TargetBatchingImpl.RunTargetWithBucket (System.Collections.Generic.Dictionary`2 bucket, Microsoft.Build.BuildEngine.Target target, System.Boolean& executeOnErrors) <0x25e14b8 + 0x00213> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.TargetBatchingImpl.Run (Microsoft.Build.BuildEngine.Target target, System.Boolean& executeOnErrors) <0x25e1360 + 0x000f7> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.TargetBatchingImpl.Build (Microsoft.Build.BuildEngine.Target target, System.Boolean& executeOnErrors) <0x25dfee0 + 0x00053> in <filename unknown>:0\r\nat Microsoft.Build.BuildEngine.Target.DoBuild (System.Boolean& executeOnErrors) <0x25dfcf0 + 0x0004f> in <filename unknown>:0","created_at":"2016-07-13T13:59:52Z","updated_at":"2016-07-13T13:59:52Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/mono/mono/pulls/3274/commits","review_comments_url":"https://api.github.com/repos/mono/mono/pulls/3274/comments","review_comment_url":"https://api.github.com/repos/mono/mono/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mono/mono/issues/3274/comments","statuses_url":"https://api.github.com/repos/mono/mono/statuses/c005ca7358dcff367762a5159bba115eec94b6d3","head":{"label":"Unity-Technologies:fix-path-getfullpath-windows","ref":"fix-path-getfullpath-windows","sha":"c005ca7358dcff367762a5159bba115eec94b6d3","user":{"login":"Unity-Technologies","id":426196,"avatar_url":"https://avatars.githubusercontent.com/u/426196?v=3","gravatar_id":"","url":"https://api.github.com/users/Unity-Technologies","html_url":"https://github.com/Unity-Technologies","followers_url":"https://api.github.com/users/Unity-Technologies/followers","following_url":"https://api.github.com/users/Unity-Technologies/following{/other_user}","gists_url":"https://api.github.com/users/Unity-Technologies/gists{/gist_id}","starred_url":"https://api.github.com/users/Unity-Technologies/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Unity-Technologies/subscriptions","organizations_url":"https://api.github.com/users/Unity-Technologies/orgs","repos_url":"https://api.github.com/users/Unity-Technologies/repos","events_url":"https://api.github.com/users/Unity-Technologies/events{/privacy}","received_events_url":"https://api.github.com/users/Unity-Technologies/received_events","type":"Organization","site_admin":false},"repo":{"id":989769,"name":"mono","full_name":"Unity-Technologies/mono","owner":{"login":"Unity-Technologies","id":426196,"avatar_url":"https://avatars.githubusercontent.com/u/426196?v=3","gravatar_id":"","url":"https://api.github.com/users/Unity-Technologies","html_url":"https://github.com/Unity-Technologies","followers_url":"https://api.github.com/users/Unity-Technologies/followers","following_url":"https://api.github.com/users/Unity-Technologies/following{/other_user}","gists_url":"https://api.github.com/users/Unity-Technologies/gists{/gist_id}","starred_url":"https://api.github.com/users/Unity-Technologies/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Unity-Technologies/subscriptions","organizations_url":"https://api.github.com/users/Unity-Technologies/orgs","repos_url":"https://api.github.com/users/Unity-Technologies/repos","events_url":"https://api.github.com/users/Unity-Technologies/events{/privacy}","received_events_url":"https://api.github.com/users/Unity-Technologies/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Unity-Technologies/mono","description":"Mono open source ECMA CLI, C# and .NET implementation.","fork":true,"url":"https://api.github.com/repos/Unity-Technologies/mono","forks_url":"https://api.github.com/repos/Unity-Technologies/mono/forks","keys_url":"https://api.github.com/repos/Unity-Technologies/mono/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Unity-Technologies/mono/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Unity-Technologies/mono/teams","hooks_url":"https://api.github.com/repos/Unity-Technologies/mono/hooks","issue_events_url":"https://api.github.com/repos/Unity-Technologies/mono/issues/events{/number}","events_url":"https://api.github.com/repos/Unity-Technologies/mono/events","assignees_url":"https://api.github.com/repos/Unity-Technologies/mono/assignees{/user}","branches_url":"https://api.github.com/repos/Unity-Technologies/mono/branches{/branch}","tags_url":"https://api.github.com/repos/Unity-Technologies/mono/tags","blobs_url":"https://api.github.com/repos/Unity-Technologies/mono/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Unity-Technologies/mono/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Unity-Technologies/mono/git/refs{/sha}","trees_url":"https://api.github.com/repos/Unity-Technologies/mono/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Unity-Technologies/mono/statuses/{sha}","languages_url":"https://api.github.com/repos/Unity-Technologies/mono/languages","stargazers_url":"https://api.github.com/repos/Unity-Technologies/mono/stargazers","contributors_url":"https://api.github.com/repos/Unity-Technologies/mono/contributors","subscribers_url":"https://api.github.com/repos/Unity-Technologies/mono/subscribers","subscription_url":"https://api.github.com/repos/Unity-Technologies/mono/subscription","commits_url":"https://api.github.com/repos/Unity-Technologies/mono/commits{/sha}","git_commits_url":"https://api.github.com/repos/Unity-Technologies/mono/git/commits{/sha}","comments_url":"https://api.github.com/repos/Unity-Technologies/mono/comments{/number}","issue_comment_url":"https://api.github.com/repos/Unity-Technologies/mono/issues/comments{/number}","contents_url":"https://api.github.com/repos/Unity-Technologies/mono/contents/{+path}","compare_url":"https://api.github.com/repos/Unity-Technologies/mono/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Unity-Technologies/mono/merges","archive_url":"https://api.github.com/repos/Unity-Technologies/mono/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Unity-Technologies/mono/downloads","issues_url":"https://api.github.com/repos/Unity-Technologies/mono/issues{/number}","pulls_url":"https://api.github.com/repos/Unity-Technologies/mono/pulls{/number}","milestones_url":"https://api.github.com/repos/Unity-Technologies/mono/milestones{/number}","notifications_url":"https://api.github.com/repos/Unity-Technologies/mono/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Unity-Technologies/mono/labels{/name}","releases_url":"https://api.github.com/repos/Unity-Technologies/mono/releases{/id}","deployments_url":"https://api.github.com/repos/Unity-Technologies/mono/deployments","created_at":"2010-10-15T12:13:44Z","updated_at":"2016-07-08T00:20:05Z","pushed_at":"2016-07-13T13:56:24Z","git_url":"git://github.com/Unity-Technologies/mono.git","ssh_url":"git@github.com:Unity-Technologies/mono.git","clone_url":"https://github.com/Unity-Technologies/mono.git","svn_url":"https://github.com/Unity-Technologies/mono","homepage":"http://www.mono-project.com/","size":491033,"stargazers_count":336,"watchers_count":336,"language":"C#","has_issues":false,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":197,"mirror_url":null,"open_issues_count":1,"forks":197,"open_issues":1,"watchers":336,"default_branch":"unity-staging"}},"base":{"label":"mono:master","ref":"master","sha":"9a60311261f05a000642c37d38735e8a7398defc","user":{"login":"mono","id":53395,"avatar_url":"https://avatars.githubusercontent.com/u/53395?v=3","gravatar_id":"","url":"https://api.github.com/users/mono","html_url":"https://github.com/mono","followers_url":"https://api.github.com/users/mono/followers","following_url":"https://api.github.com/users/mono/following{/other_user}","gists_url":"https://api.github.com/users/mono/gists{/gist_id}","starred_url":"https://api.github.com/users/mono/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mono/subscriptions","organizations_url":"https://api.github.com/users/mono/orgs","repos_url":"https://api.github.com/users/mono/repos","events_url":"https://api.github.com/users/mono/events{/privacy}","received_events_url":"https://api.github.com/users/mono/received_events","type":"Organization","site_admin":false},"repo":{"id":791611,"name":"mono","full_name":"mono/mono","owner":{"login":"mono","id":53395,"avatar_url":"https://avatars.githubusercontent.com/u/53395?v=3","gravatar_id":"","url":"https://api.github.com/users/mono","html_url":"https://github.com/mono","followers_url":"https://api.github.com/users/mono/followers","following_url":"https://api.github.com/users/mono/following{/other_user}","gists_url":"https://api.github.com/users/mono/gists{/gist_id}","starred_url":"https://api.github.com/users/mono/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mono/subscriptions","organizations_url":"https://api.github.com/users/mono/orgs","repos_url":"https://api.github.com/users/mono/repos","events_url":"https://api.github.com/users/mono/events{/privacy}","received_events_url":"https://api.github.com/users/mono/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mono/mono","description":"Mono open source ECMA CLI, C# and .NET implementation.","fork":false,"url":"https://api.github.com/repos/mono/mono","forks_url":"https://api.github.com/repos/mono/mono/forks","keys_url":"https://api.github.com/repos/mono/mono/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mono/mono/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mono/mono/teams","hooks_url":"https://api.github.com/repos/mono/mono/hooks","issue_events_url":"https://api.github.com/repos/mono/mono/issues/events{/number}","events_url":"https://api.github.com/repos/mono/mono/events","assignees_url":"https://api.github.com/repos/mono/mono/assignees{/user}","branches_url":"https://api.github.com/repos/mono/mono/branches{/branch}","tags_url":"https://api.github.com/repos/mono/mono/tags","blobs_url":"https://api.github.com/repos/mono/mono/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mono/mono/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mono/mono/git/refs{/sha}","trees_url":"https://api.github.com/repos/mono/mono/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mono/mono/statuses/{sha}","languages_url":"https://api.github.com/repos/mono/mono/languages","stargazers_url":"https://api.github.com/repos/mono/mono/stargazers","contributors_url":"https://api.github.com/repos/mono/mono/contributors","subscribers_url":"https://api.github.com/repos/mono/mono/subscribers","subscription_url":"https://api.github.com/repos/mono/mono/subscription","commits_url":"https://api.github.com/repos/mono/mono/commits{/sha}","git_commits_url":"https://api.github.com/repos/mono/mono/git/commits{/sha}","comments_url":"https://api.github.com/repos/mono/mono/comments{/number}","issue_comment_url":"https://api.github.com/repos/mono/mono/issues/comments{/number}","contents_url":"https://api.github.com/repos/mono/mono/contents/{+path}","compare_url":"https://api.github.com/repos/mono/mono/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mono/mono/merges","archive_url":"https://api.github.com/repos/mono/mono/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mono/mono/downloads","issues_url":"https://api.github.com/repos/mono/mono/issues{/number}","pulls_url":"https://api.github.com/repos/mono/mono/pulls{/number}","milestones_url":"https://api.github.com/repos/mono/mono/milestones{/number}","notifications_url":"https://api.github.com/repos/mono/mono/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mono/mono/labels{/name}","releases_url":"https://api.github.com/repos/mono/mono/releases{/id}","deployments_url":"https://api.github.com/repos/mono/mono/deployments","created_at":"2010-07-22T18:06:36Z","updated_at":"2016-07-13T13:29:44Z","pushed_at":"2016-07-13T13:26:54Z","git_url":"git://github.com/mono/mono.git","ssh_url":"git@github.com:mono/mono.git","clone_url":"https://github.com/mono/mono.git","svn_url":"https://github.com/mono/mono","homepage":"http://www.mono-project.com/","size":500411,"stargazers_count":4733,"watchers_count":4733,"language":"C#","has_issues":false,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":2270,"mirror_url":null,"open_issues_count":124,"forks":2270,"open_issues":124,"watchers":4733,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mono/mono/pulls/3274"},"html":{"href":"https://github.com/mono/mono/pull/3274"},"issue":{"href":"https://api.github.com/repos/mono/mono/issues/3274"},"comments":{"href":"https://api.github.com/repos/mono/mono/issues/3274/comments"},"review_comments":{"href":"https://api.github.com/repos/mono/mono/pulls/3274/comments"},"review_comment":{"href":"https://api.github.com/repos/mono/mono/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mono/mono/pulls/3274/commits"},"statuses":{"href":"https://api.github.com/repos/mono/mono/statuses/c005ca7358dcff367762a5159bba115eec94b6d3"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":1,"additions":8,"deletions":1,"changed_files":2}}
{"actor":{"display_login":"joncham"}}