1. 03 2月, 2017 3 次提交
  2. 02 2月, 2017 5 次提交
  3. 01 2月, 2017 12 次提交
    • J
      Don't crash if SVsTaskList doesn't implement ITaskList · e5a1536c
      Jason Malinowski 提交于
      My earlier refactoring here replaced a call that was doing an 'as' cast
      under the covers with a hard cast. It turns out in devenv /build this
      service is a different type that doesn't actually implement the
      same interfaces, so the distinction was important. This restores the
      old behavior.
      e5a1536c
    • J
      Mitigate problem where we try creating the VisualStudioMetadataReferenceManager right away · 87c58a51
      Jason Malinowski 提交于
      This causes problems if we're spinning up a workspace on a background
      thread. Let's defer until actually having to fetch metadata, which we
      don't do in most cases anyways.
      87c58a51
    • J
    • O
      Add tests to ref return error codes · 0dcffe8a
      Omar Tawfik 提交于
      0dcffe8a
    • D
      Merge pull request #16826 from dpoeschl/FixRenameReentrancy2 · cb9b7d9e
      David Poeschl 提交于
      Inline Rename: Prevent crash when source control dialogs show
      cb9b7d9e
    • O
      Merge pull request #16782 from OmarTawfik/fix-14292-vb-tuple-implicit-tests · bc44e42f
      Omar Tawfik 提交于
      Added tests for VB implicitly defined tuples
      bc44e42f
    • H
      Merge pull request #16775 from heejaechang/filesizelimit · 1e20fccf
      Heejae Chang 提交于
      added max file limit
      1e20fccf
    • D
      Inline Rename: Prevent crash when source control dialogs show · 1bbe244b
      David Poeschl 提交于
      Fixes https://devdiv.visualstudio.com/DevDiv/_workitems?_a=edit&id=227513
      
      InlineRenameSession.ApplyReplacementText is called in response to buffer changes. In response to these changes, we want to (1) kick off some background work to calculate the new ConflictResolutionTask, (2) propagate the new replacementText to all buffers on the UI thread, and then (3) apply the results of the ConflictResolutionTask on the UI thread once they're ready.
      
      Prior to this change, steps (1) and (3) were always done together, in sequence, regardless of how (2) was progressing. Since the replacementText propagation started synchronously and stayed on the UI thread, this usually meant that the application of the results of the ConflictResolutionTask would have to wait until the replacementText propagation completed (because it would wait for the UI thread to be available). This worked great, most of the time.
      
      But, if the propagation of the replacementText causes a buffer change in a source controlled document and "Prompt for Checkout" is enabled, then a modal dialog to checkout files appears. Then, the UI thread pumps and allows more work to be scheduled there. Our ConflictResolutionTask could finish calculating conflicts and the application of these conflicts could be scheduled on the UI thread while a dialog is still up (and we are still propagating the replacementText). It would then try to manipulate the undo stack and apply edits to buffers. Since we still have an open undo transaction from the replacementText propagation,
      the attempt to manipulate the undo stack would crash.
      
      This change splits the kicking off of the ConflictResolutionTask and the application of the replacements it computes into separately callable methods that aren't automatically chained together. In some cases they can be called in sequence, emulating the old behavior. But when a text buffer edit triggers ApplyReplacementText, we first kick off the ConflictResolutionTask, then propagate the new replacementText, and *then*, once the replacementText is fully propagated (including the handling of any source control modal dialogs), we finally apply the results of the ConflictResolutionTask on the UI thread.
      
      This does not guarantee that *no* reentrancy will ever happen in Inline Rename, but it gets rid of the biggest, obvious culprit. Completely safeguarding would require a larger change, and I think this approach
      is the best one given our current RTM escrow timeline, and it will fix the problem for the vast majority of users encountering this problem.
      1bbe244b
    • D
      Merge pull request #16853 from dpoeschl/ReadmeRemoveRC3 · f60c7fd0
      David Poeschl 提交于
      Remove RC3 builds from the README
      f60c7fd0
    • H
      add xml doc on InvalidDataException · 3c99db56
      Heejae Chang 提交于
      3c99db56
    • D
      Remove RC3 builds from the README · 37b99172
      David Poeschl 提交于
      37b99172
    • T
      36811f46
  4. 31 1月, 2017 4 次提交
  5. 30 1月, 2017 1 次提交
  6. 28 1月, 2017 13 次提交
  7. 27 1月, 2017 2 次提交