Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ruby Warrior fails to launch if another program has created a file called .profile #35

Open
mistydemeo opened this issue May 18, 2011 · 5 comments

Comments

@mistydemeo
Copy link

Ruby Warrior is giving me an error when I attempt to launch it. Here's the error:

Welcome to Ruby Warrior /Library/Ruby/Gems/1.8/gems/rubywarrior-0.1.2/lib/ruby_warrior/profile.rb:31:in load': incompatible marshal file format (can't be read) (TypeError)
format version 4.8 required; 98.139 given
from /Library/Ruby/Gems/1.8/gems/rubywarrior-0.1.2/lib/ruby_warrior/profile.rb:31:in decode' from /Library/Ruby/Gems/1.8/gems/rubywarrior-0.1.2/lib/ruby_warrior/profile.rb:35:in load'
from /Library/Ruby/Gems/1.8/gems/rubywarrior-0.1.2/lib/ruby_warrior/game.rb:8:in start' from /Library/Ruby/Gems/1.8/gems/rubywarrior-0.1.2/lib/ruby_warrior/runner.rb:17:in run'
from /Library/Ruby/Gems/1.8/gems/rubywarrior-0.1.2/bin/rubywarrior:5
from /usr/bin/rubywarrior:19:in load' from /usr/bin/rubywarrior:19

I'm using Ruby 1.8.7 on Mac OS X 10.6.7. I installed Ruby Warrior from RubyGems 1.8.2.

@mistydemeo
Copy link
Author

Just an update - I used rvm to test with additional versions (1.8.6, 1.8.7 with latest patchset, 1.9.2) and still received the same error message, with a different number for "given".

@mistydemeo
Copy link
Author

Just an update - based on a forum thread I found online, I figured out that I can successfully run Ruby Warrior if I use a directory other than my home directory. The error only happens if I launch from ~/

So, with a little more digging, it appears that the reason for the bug is the fact that the game assumes any file named .profile is an RW profile and tries to open it. Since .profile is a common settings profile file for shells, it's very possible for a file named .profile to already exist and mess things up.

I think using .profile is probably not the best idea for this reason - too big a chance of clash with other software. I'd recommend changing it to .rwprofile or .rw_profile. If you agree, I'll open a pull request to patch it.

@ryanb
Copy link
Owner

ryanb commented Jun 29, 2011

Thanks for researching this issue, and sorry I took so long to respond. Ruby Warrior is a hobby project and I haven't had a chance to work on it recently, but if you find the issue and want to submit a pull request that would be appreciated. Thanks!

@mistydemeo
Copy link
Author

No worries! I understand you've been busy.

I'll go ahead and patch it, and submit a pull request.

@Leandrogcb
Copy link

I solved that problem creating a new directory like: ~/ruby/rubywarrior, then install the gem.
cd ~
mkdir ruby/rubywarrior
gem install rubywarrior

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants