1. #1

    [Bug] Updater macOS version reported exception (initial crash)

    Hi guys,

    The updater crashed for me on an initial update, however, a 2nd run completed with a reported exception.

    I'm not sure where to grab FG component version numbers from.

    I'm running macOS 10.15.1

    Here is the exception report:


    Code:
    e: SaveFile - System.UnauthorizedAccessException: Access to the path '/Applications/SmiteWorks/Fantasy Grounds/FantasyGrounds.app/Contents/Resources/MainMenu.nib' is denied.
      at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.Boolean anonymous, System.IO.FileOptions options) [0x000e0] in <567df3e0919241ba98db88bec4c6696f>:0 
      at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at (wrapper remoting-invoke-with-check) System.IO.FileStream..ctor(string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,int)
      at System.IO.File.Create (System.String path, System.Int32 bufferSize) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at System.IO.File.Create (System.String path) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at FileManager.SaveStreamToFile (System.IO.Stream str, System.String sFile, Ionic.Zip.ZipFile zf, System.Collections.Generic.List`1[T] fileStreams, System.String sProduct) [0x00037] in <b8955991e4b346dab1c9d80d88c651ee>:0 
    HandleFile: Unable to save file (FantasyGrounds.app/Contents/Resources/MainMenu.nib)
    e: SaveFile - System.UnauthorizedAccessException: Access to the path '/Applications/SmiteWorks/Fantasy Grounds/FantasyGrounds.app/Contents/Resources/ScreenSelector.nib' is denied.
      at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.Boolean anonymous, System.IO.FileOptions options) [0x000e0] in <567df3e0919241ba98db88bec4c6696f>:0 
      at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at (wrapper remoting-invoke-with-check) System.IO.FileStream..ctor(string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,int)
      at System.IO.File.Create (System.String path, System.Int32 bufferSize) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at System.IO.File.Create (System.String path) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at FileManager.SaveStreamToFile (System.IO.Stream str, System.String sFile, Ionic.Zip.ZipFile zf, System.Collections.Generic.List`1[T] fileStreams, System.String sProduct) [0x00037] in <b8955991e4b346dab1c9d80d88c651ee>:0 
    HandleFile: Unable to save file (FantasyGrounds.app/Contents/Resources/ScreenSelector.nib)
    e: SaveFile - System.UnauthorizedAccessException: Access to the path '/Applications/SmiteWorks/Fantasy Grounds/FantasyGrounds.app/Contents/Resources/KeyConfig.nib' is denied.
      at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.Boolean anonymous, System.IO.FileOptions options) [0x000e0] in <567df3e0919241ba98db88bec4c6696f>:0 
      at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at (wrapper remoting-invoke-with-check) System.IO.FileStream..ctor(string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,int)
      at System.IO.File.Create (System.String path, System.Int32 bufferSize) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at System.IO.File.Create (System.String path) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0 
      at FileManager.SaveStreamToFile (System.IO.Stream str, System.String sFile, Ionic.Zip.ZipFile zf, System.Collections.Generic.List`1[T] fileStreams, System.String sProduct) [0x00037] in <b8955991e4b346dab1c9d80d88c651ee>:0 
    HandleFile: Unable to save file (FantasyGrounds.app/Contents/Resources/KeyConfig.nib)
    UnzipProduct-FantasyGrounds: 5,337724
        FantasyGrounds Update Complete
    i: /Users/chris/SmiteWorks/Fantasy Grounds/vault/FantasyGrounds.dat
    Found FantasyGrounds, modifying app permissions.
    chmod -R 700 "/Applications/SmiteWorks/Fantasy Grounds/FantasyGrounds.app"

  2. #2
    Thanks for reporting. I've filed as FGU-808.

    Regards,
    JPG

  3. #3
    Hey there!

    So, I've been investigating this error and it's related to an update we made on Monday.
    We upgraded our Unity version and some build files were added, including MainMenu.nib

    What seems to be happening here is that we don't have write permissions to the application folder, so the new file can't be added.

    One step in the updater process is to modify the folder permissions so the application is executeable, but I believe I've got the wrong permissions in the code so it is execute only.

    Would you (if you are comfortable with this) please try opening a terminal and executing the command below:

    sudo chmod -R 777 "/Applications/SmiteWorks/Fantasy Grounds/FantasyGrounds.app/"

    (if you are unfamiliar with the teminal, you will be prompted with a password at this point)

    I believe this will allow you to update properly, and I am going to include it in the next updater build (especially if I receive report that this helps your issue)

    Thanks!
    --Ryan--

  4. #4
    Hi Ryan,

    As mentioned in another thread, the above does not work. I've noticed the update runs chmod 700 after the file extract copy fails, I do not believe this is the issue. As which user does the updater extract files?

    I can get the update to succeed when I delete the three files that need replacing manually.

    However, the updater fails on the following update.
    Last edited by Cryophobia; December 12th, 2019 at 22:08.

  5. #5
    Hi Ryan,

    I've had success removing the FG app at /Applications/SmiteWorks/Fantasy Grounds/FantasyGrounds.app and reinstalling it. Since all downloaded and custom data resides in my personal home folder this seemed to be a safe route to take. The Updater passed updating all files following this route. I'll keep an eye on the issue. It could just be the there is no update to the app itself and only rulest/module data updates and this is a false positive at this stage.

    If you want to reach out via email for specific info or additional tests, please feel free to email me via my form details.

    Chris

  6. #6
    As you said Cryo, this is related to the folder permissions being set by the updater.
    I'll be pushing out a new update soon that should fix this for everyone else as well.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in