Uploaded image for project: 'Qt Visual Studio Tools'
  1. Qt Visual Studio Tools
  2. QTVSADDINBUG-1170

crash on choosing Qt version for QML language server

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Not Evaluated
    • None
    • 3.1.0 (rev.02)
    • General
    • None
    • Windows
    • eb47b27fa (dev)

    Description

      How to reproduce:

      • make sure you have a Qt version registered that doesn't exist anymore. Maybe by uninstalling an older Qt version.
      • Extensions→Qt VS Tools→Options→Qt→General→QML Language Server
      • click the "Qt Version" field and try to open the combo box

      What happens?

      There's an exception and VS closes.

      These Qt version are inaccessible:
       * 6.2.7_msvc2019_64 in D:\Qt\6.2.7\msvc2019_64
       * 6.5.0_msvc2019_64 in D:\Qt\6.5.0\msvc2019_64
       * 6.5.1_msvc2019_64 in D:\Qt\6.5.1\msvc2019_64
       * 6.5.2_msvc2019_64 in D:\Qt\6.5.2\msvc2019_64
      Make sure that you have read access to all files in your Qt directories.
      --- Checking 6.2.7_msvc2019_64 ...
      --- Checking 6.5.0_msvc2019_64 ...
      --- Checking 6.5.1_msvc2019_64 ...
      --> 6.2.7_msvc2019_64 Missing or cross-platform installation; skipped.
      --- Checking 6.5.2_msvc2019_64 ...
      --> 6.5.2_msvc2019_64 Missing or cross-platform installation; skipped.
      --- Checking 6.6.1_msvc2019_64 ...
      An exception (Win32Exception) occurred.
      Message:
         The system cannot find the file specified
      Stack Trace:
         at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
         at QtVsTools.Core.QMake.Run()
      
      --> 6.5.1_msvc2019_64 Missing or cross-platform installation; skipped.
      --- qmake(2768): Started D:\Qt\6.6.1\msvc2019_64\bin\qmake.exe
      --- qmake(2768): Querying persistent properties
      --- qmake(2768): Exit code 0 (83 msecs)
      --- 6.6.1_msvc2019_64 check OK (0.4 secs)
      An exception (Win32Exception) occurred.
      Message:
         The system cannot find the file specified
      Stack Trace:
         at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
         at QtVsTools.Core.QMake.Run()
      
      --> 6.5.0_msvc2019_64 Missing or cross-platform installation; skipped.
      
      
      
          ################################################################
              == Qt Visual Studio Tools version 3.1.0 (rev.2) ==
                  Extension package initialized in:
                   * Total: 214.69 msecs
                   * UI thread: 65.29 msecs
          ################################################################
      

      Backtrace with commit f3afc13bd5f708945ec8c6ee33793555d3506afe

      System.ArgumentNullException: 'Value cannot be null.
      Parameter name: path1'
      
       	[External Code]	
      >	QtVsTools.Core.dll!QtVsTools.Core.Options.QtOptionsPage.QmlLspProviderConverter.IsCompatible(string qtVersion) Line 183	C#
       	[External Code]	
       	QtVsTools.Core.dll!QtVsTools.Core.Options.QtOptionsPage.QtVersionConverter.GetStandardValues(System.ComponentModel.ITypeDescriptorContext _) Line 169	C#
       	[External Code]	
      

      Details:

      System.ArgumentNullException
        HResult=0x80004003
        Message=Value cannot be null.
      Parameter name: path1
        Source=mscorlib
        StackTrace:
         at System.IO.Path.Combine(String path1, String path2)
         at QtVsTools.Core.Options.QtOptionsPage.QmlLspProviderConverter.IsCompatible(String qtVersion) in D:\dev\qt\vstools\QtVsTools.Core\Options\QtOptionsPage.cs:line 183
         at System.Linq.Enumerable.WhereArrayIterator`1.MoveNext()
         at System.Linq.Enumerable.AppendPrependIterator`1.LoadFromEnumerator()
         at System.Linq.Enumerable.AppendPrepend1Iterator`1.MoveNext()
         at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
         at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
         at QtVsTools.Core.Options.QtOptionsPage.QtVersionConverter.GetStandardValues(ITypeDescriptorContext _) in D:\dev\qt\vstools\QtVsTools.Core\Options\QtOptionsPage.cs:line 169
         at System.Windows.Forms.PropertyGridInternal.GridEntry.GetPropertyValueList()
         at System.Windows.Forms.PropertyGridInternal.PropertyGridView.PopupDialog(Int32 row)
         at System.Windows.Forms.PropertyGridInternal.PropertyGridView.OnBtnClick(Object sender, EventArgs e)
         at System.Windows.Forms.Control.OnClick(EventArgs e)
         at System.Windows.Forms.PropertyGridInternal.DropDownButton.OnClick(EventArgs e)
         at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
         at System.Windows.Forms.PropertyGridInternal.DropDownButton.OnMouseUp(MouseEventArgs e)
         at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
         at System.Windows.Forms.Control.WndProc(Message& m)
         at System.Windows.Forms.ButtonBase.WndProc(Message& m)
         at System.Windows.Forms.Button.WndProc(Message& m)
         at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
         at Microsoft.Internal.VisualStudio.Shell.Interop.IVsToolsOptionsPrivate2.ShowToolsOptions(Guid selectedPageId)
         at Microsoft.VisualStudio.Services.UnifiedSettings.VsCommands.ToolsOptionsCommand.<>c__DisplayClass6_0.<<Execute>b__0>d.MoveNext()
      

      Attachments

        For Gerrit Dashboard: QTVSADDINBUG-1170
        # Subject Branch Project Status CR V

        Activity

          People

            heimrich Karsten Heimrich
            jbornema Joerg Bornemann
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes