1. 14 Jun, 2019 3 commits
  2. 13 Jun, 2019 10 commits
  3. 12 Jun, 2019 7 commits
  4. 11 Jun, 2019 6 commits
  5. 10 Jun, 2019 10 commits
  6. 09 Jun, 2019 1 commit
    • Dmitri Shuralyov's avatar
      cmd/go: fix syntax mistake in a testscript file, take 2 · 323212b9
      Dmitri Shuralyov authored
      This is a followup to CL 181278 and CL 181177.
      
      According to cmd/go/testdata/script/README:
      
      	Each line is parsed into a sequence of space-separated command words,
      	with environment variable expansion and # marking an end-of-line comment.
      	Adding single quotes around text keeps spaces in that text from being treated
      	as word separators and also disables environment variable expansion.
      
      We want $HOME to be expanded, so leave it out of the single-quoted
      block of text.
      
      I tested this change on macOS, and it makes TestScript/env_write pass.
      
      Fixes #32503
      
      Change-Id: I13621aec82263e5cb6978c13a1ad71d2210a0e42
      Reviewed-on: https://go-review.googlesource.com/c/go/+/181418
      Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
      Reviewed-by: default avatarDaniel Martí <mvdan@mvdan.cc>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      323212b9
  7. 07 Jun, 2019 3 commits
    • Daniel Martí's avatar
      cmd/go: fix syntax mistake in a testscript file · 13f179b9
      Daniel Martí authored
      I didn't realise that the trybots don't include any Mac machines, so I
      assumed this test change was fine when submitting CL 181177.
      
      In any case, this is a simple fix. I forgot to add the quotes, as the
      new UserConfigDir on Mac includes a space.
      
      Change-Id: I0766b966fc41736e9fc859e37f059a3f12788d7a
      Reviewed-on: https://go-review.googlesource.com/c/go/+/181278
      Run-TryBot: Daniel Martí <mvdan@mvdan.cc>
      Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      13f179b9
    • Daniel Martí's avatar
      os: change UserConfigDir on Darwin to ~/Library/Application Support · b3365264
      Daniel Martí authored
      The old code used ~/Library/Preferences, which is documented by
      Apple as:
      
      	This directory contains app-specific preference files. You
      	should not create files in this directory yourself. Instead, use
      	the NSUserDefaults class or CFPreferences API to get and set
      	preference values for your app.
      
      It looks like we missed everything after the first sentence; it's
      definitely not the right choice for files that Go programs and users
      should be touching directly.
      
      Instead, use ~/Library/Application Support, which is documented as:
      
      	Use this directory to store all app data files except those
      	associated with the user’s documents. For example, you might use
      	this directory to store app-created data files, configuration
      	files, templates, or other fixed or modifiable resources that
      	are managed by the app. An app might use this directory to store
      	a modifiable copy of resources contained initially in the app’s
      	bundle. A game might use this directory to store new levels
      	purchased by the user and downloaded from a server.
      
      This seems in line with what UserConfigDir is for, so use it.
      
      The documentation quotes above are obtained from the surprisingly long
      link below:
      
      https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html
      
      Fixes #32475.
      
      Change-Id: Ic27a6c92d76a5d7a4d4b8eac5cd8472f67a533a4
      Reviewed-on: https://go-review.googlesource.com/c/go/+/181177
      Run-TryBot: Daniel Martí <mvdan@mvdan.cc>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarAndrew Bonventre <andybons@golang.org>
      b3365264
    • Keith Randall's avatar
      cmd/link: fix deferreturn detector · 9eb40315
      Keith Randall authored
      The logic for detecting deferreturn calls is wrong.
      
      We used to look for a relocation whose symbol is runtime.deferreturn
      and has an offset of 0. But on some architectures, the relocation
      offset is not zero. These include arm (the offset is 0xebfffffe) and
      s390x (the offset is 6).
      
      This ends up setting the deferreturn offset at 0, so we end up using
      the entry point live map instead of the deferreturn live map in a
      frame which defers and then segfaults.
      
      Instead, use the IsDirectCall helper to find calls.
      
      Fixes #32477
      Update #6980
      
      Change-Id: Iecb530a7cf6eabd7233be7d0731ffa78873f3a54
      Reviewed-on: https://go-review.googlesource.com/c/go/+/181258
      Run-TryBot: Keith Randall <khr@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarCherry Zhang <cherryyz@google.com>
      9eb40315