5E Product Walkthrough Playlist
Page 1 of 2 12 Last
  1. #1

    Rulesets not in Game System list when Host Campaign selected on Mac

    After updating Fantasy Grounds, the Game Systems (Rulesets) list is empty when Host Campaign is selected.

    Steps to Reproduce
    ----------------------
    1) Run Fantasy Grounds (Mac)
    2) Click "Check For Updates"

    Expect: successful update, Game Systems (Rulesets) still there
    Actual: Game Systems (Rulesets) list empty (see attached image)

    Running Mac OS X 10.15.2

    I found the following two error entries in the updater log file:
    Code:
    e: FileMoveSafe - Could not move file: System.IO.IOException: Win32 IO returned ERROR_ALREADY_EXISTS. Path: 
      at System.IO.File.Move (System.String sourceFileName, System.String destFileName) [0x00102] in <567df3e0919241ba98db88bec4c6696f>:0 
      at FileManager.FileMoveSafe (System.String sSrc, System.String sDst) [0x00000] in <45b7eb3c91e8433bae5079e72550acdf>:0
    Code:
    e: FileMoveSafe - Could not move file: System.IO.IOException: Sharing violation on path /Users/steve/Documents/Games/FantasyGrounds/vault/SWK03UPGRADE.dat.tmp
      at System.IO.File.Move (System.String sourceFileName, System.String destFileName) [0x0010f] in <567df3e0919241ba98db88bec4c6696f>:0 
      at FileManager.FileMoveSafe (System.String sSrc, System.String sDst) [0x00000] in <45b7eb3c91e8433bae5079e72550acdf>:0
    Notes:
    1) I have my data directory in a folder in my Documents folder. (~/Documents/Games/FantasyGrounds)
    2) There are a dozen (ruleset).pak files in the rulesets folder

    I didn't see any other obvious errors, but I don't know the log files well, so may have missed something obvious to others. I can provide log files separately.
    Attached Images Attached Images
    Last edited by sdinwiddie; January 30th, 2020 at 06:26.

  2. #2
    @sdinwiddie,

    Are you still having this issue? Apologies for the delay; been working on big project in the background. If so, I'll send to Ryan (who makes the Mac version) to see if he has any ideas or questions.

    Regards,
    JPG

  3. #3
    @Moon Wizard, yes still having the issue. It happened to me once a few weeks back, as well. I fixed it at that time because I was trying to test something else.

    I don't remember the exact fix. It either had to do with extended attributes on the folder and involved me deleting the rulesets folder or the FantasyGroundsUpdater.dat file in the vault. I notice that the FantasyGroundsUpdater.dat file has a .tmp file that didn't get removed and it has an extended attribute applied to it. See attached image.

    Thanks!
    Attached Images Attached Images

  4. #4
    I also noticed a stream of "System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log" in the system.log while I was exploring.

    Code:
    error	20:24:55.929647-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:06.408231-0800	kernel	Sandbox: 309 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:06.412362-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:17.393635-0800	kernel	Sandbox: 322 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:17.399693-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:28.376332-0800	kernel	Sandbox: 322 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:28.388382-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:38.376813-0800	kernel	Sandbox: 293 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:38.381815-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:48.377162-0800	kernel	Sandbox: 295 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:48.403944-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log

  5. #5
    I've forwarded to our Mac developer to respond directly. It looks like the permissions are not set up on the folder correctly, or something similar.

    Regards,
    JPG

  6. #6
    Quote Originally Posted by sdinwiddie View Post
    I also noticed a stream of "System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log" in the system.log while I was exploring.

    Code:
    error	20:24:55.929647-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:06.408231-0800	kernel	Sandbox: 309 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:06.412362-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:17.393635-0800	kernel	Sandbox: 322 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:17.399693-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:28.376332-0800	kernel	Sandbox: 322 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:28.388382-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:38.376813-0800	kernel	Sandbox: 293 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:38.381815-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    default	20:25:48.377162-0800	kernel	Sandbox: 295 duplicate reports for Fantasy Grounds deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    error	20:25:48.403944-0800	kernel	Sandbox: Fantasy Grounds(10845) System Policy: deny(1) file-write-data /Users/steve/Documents/Games/FantasyGrounds/console.log
    Hey there, Ryan here.
    It looks like somewhere along the way, permissions did not get set correctly. I'm not exactly sure why at the moment, I know I've done a few permissions fixes in the past, so something may have been caught up for you along the line.

    Could you please try opening a terminal and run the command
    sudo chmod -R 777 /Users/steve/Documents/Games/FantasyGrounds

    Technically we only need read and write permission on this folder (and not execute permission as in the app directory), but this is the standard code we use.

    As you mentioned seeing some .tmp files in the vault, you may need to remove those, and I would try an update after trying this permission fix but probably before loading back into Fantasy Grounds.
    I'll keep an eye out to see if this fixes things for you.

  7. #7
    Hi Ryan (@39redeyesofnight),

    Thanks for taking a look at this. I did the sudo, deleted the .tmp file from the vault folder, ran the updater... no joy.

    So, I started experimenting, but nothing worked. Some of the things I tried:

    • I cleared all of the files of extended attributes "xattr -d com.apple.macl *" first, then tried "xattr -c *, but it didn't clear a few files. Updated between tries. Failed.
    • I noticed that the date stamp on FantasyGrounds.app was created and updated on 1/6/2020, so I deleted it and re-ran the updater. Still no success.
    • I tried adding com.apple.macl to all files, that also failed.
    • I deleted the ruleset folder and ran the updater. (I noticed that All the ruleset .dat files came in with 644 permissions.)


    I could still try an uninstall and reinstall, but I was hoping not to have to resort to that again.

    I'm happy to help troubleshoot. Just let me know what you want me to do.

    Thanks,
    Steve

    One minor update: I'm now running 10.15.3 (as opposed to .2 when I reported this.)
    Last edited by sdinwiddie; February 19th, 2020 at 07:01. Reason: Added OS version information

  8. #8
    @39redeyesofnight, one more thing: I was looking through the log file in the data folder and saw one thing that may and may not be interesting:
    Code:
    COMMAND: '/Applications/SmiteWorks/Fantasy'
    I'm not sure what didn't get run because of the space between Fantasy and Grounds or if it's just a log issue. However, here it is in context:

    Code:
    OnApplicationQuit()
    Check for Self Updater HERE: /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app Exists? False
    Cannot find self updater path /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    Awake()
    ARGS: 3
    COMMAND: '/Applications/SmiteWorks/Fantasy'
    Start()
    Find old updater: /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    File.Exists() = True
    Cleanup old Updater data /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    Resuming Update

  9. #9
    Quote Originally Posted by sdinwiddie View Post
    @39redeyesofnight, one more thing: I was looking through the log file in the data folder and saw one thing that may and may not be interesting:
    Code:
    COMMAND: '/Applications/SmiteWorks/Fantasy'
    I'm not sure what didn't get run because of the space between Fantasy and Grounds or if it's just a log issue. However, here it is in context:

    Code:
    OnApplicationQuit()
    Check for Self Updater HERE: /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app Exists? False
    Cannot find self updater path /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    Awake()
    ARGS: 3
    COMMAND: '/Applications/SmiteWorks/Fantasy'
    Start()
    Find old updater: /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    File.Exists() = True
    Cleanup old Updater data /Applications/SmiteWorks/Fantasy Grounds/FantasyGroundsUpdater_OLD.app
    Resuming Update
    I believe that may be just a debug error since the other paths are correct, but I will look into that.

    This is mysterious.

    So, for clarification, does the updater seem to behave correctly? In your original post, you said the rulesets aren't loading, but the .ppks and such are in the folder.

    I'm doing a bit of research about the system policy errors, but not exactly sure yet.

    The "sharing violation" in your first post leads me to believe that perhaps after an initial update, the updater perhaps error'd and retained access to one of the files, but there *seems* to be something more at play.

    It's simple, but have you restarted your comp at any point in this process? I've got an install with Catalina but haven't tested with it too recently, I'll have to switch over and update and see if I have any similar issues.

    EDIT: If restarting doesn't work, This Article has a few tips for sandbox errors so you can see them come in, and towards the end suggests one way of rebuilding permissions on it.

    That being said, I'm still curious of the cause and need to see if this is affecting others/if this is just an apple bug or something we can fix.
    Last edited by redeyesofnight; February 21st, 2020 at 00:43.

  10. #10
    I just restarted and that didn't help. Given that my original post was OS 10.15.2 and now it is 10.15.3 leads me to believe that it had to have restarted, whether I did or not.

    I went into ~/Library/Containers and looked for anything with smiteworks or fantasygrounds, but didn't see anything. I'm assuming there should be something there. com.smiteworks.fantasygrounds or something similar. If it should be there and is not, that might be interesting.

    To answer your question about the updater, its behavior seems reasonable, but I notice a couple of things: it always downloads the updater. This may be by design (for now or always), but it seems like whatever call is being made to see if updates are available would tell it whether a new updater is truly available, so maybe an issue there. Also, the log file always seems to indicate it's looking for and _OLD file, but never finds it. Maybe as designed, but worth mentioning.

    In your original post, you said the rulesets aren't loading, but the .ppks and such are in the folder.
    Correct. 12 .ppk files in there. I don't know the system, but I was thinking it might look in the vault first before downloading a new one (for when I've deleted the .ppk file from rulesets to test scenarios), but it doesn't seem to be doing that.

    I could try to uninstall and reinstall in the standard place, but I was hoping to avoid that test since it's likely I'll have to try it a few times to verify behavior.

    I'm happy to help resolve--just let me know how I can best help.

Thread Information

Users Browsing this Thread

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

Tags for this Thread

Bookmarks

Posting Permissions

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

Log in

Log in