From: Glen Holcomb Date: 2007-07-14T05:39:15+09:00 Subject: Re: Strange Segfault ------=_Part_34847_7070039.1184359153517 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline On 7/13/07, Glen Holcomb wrote: > > On 7/13/07, Daniel Berger wrote: > > > > > > > > On Jul 13, 12:03 pm, "Glen Holcomb" wrote: > > > I have an interesting problem. I have a script that I wish to use to > > check > > > a database and then map drives based on who is logging on and the info > > in > > > the database. > > > > > > When I run the script on any of the machines in the computer lab it > > > segfaults. When I copy the exact same code that is in the script into > > an > > > irb session and run it I don't have any trouble. I can run the script > > > proper on my office workstation. > > > > > > Does anyone have any idea what could be causing this? > > > > > > I'm running ruby 1.8.6 on all the machines in question. > > > > > > Here is the script: > > > > > > require 'Win32API' > > > require 'xmlrpc/client' > > > > > > class User > > > def lookup > > > user = "0" * 20 > > > > > > getUserName = Win32API.new("advapi32", "GetUserName", 'P', "V") > > > > > > getUserName.call(user) > > > > > > return user > > > end > > > > > > def account_created?(login) > > > server = XMLRPC::Client.new2(' http://localhost:3003/user/api' > > > ) > > > > > > result = server.call('Check', login) > > > > > > if result == 0 > > > return false > > > else > > > return true > > > end > > > end > > > > > > def map_drives(login) > > > system("net use x: /delete /y") > > > system("net use l: /delete /y") > > > system("net use x: //cad1/#{login}") > > > system("net use l: //cad1/shared") > > > end > > > end > > > > > > user = User.new > > > > > > username = user.lookup > > > > > > if user.account_created?(username) > > > user.map_drives(username) > > > end > > > > What version of Windows are you on? Is there a backtrace you could > > show us? That would help us determine whether or not it's the system > > calls or something else. > > > > Regards, > > > > Dan > > > > > > All the machines involved are running XP Pro. > > This is the best I can get out of it: > > c:\ruby\lib\ruby\1.8\xmlrpc\client.rb:414:in 'call' > C:\Startup\map.rb:24:in 'account_created?' > C:\Startup\map.rb:50 > > -- > "Hey brother christian with your high and mighty errand, Your actions > speak > so loud, I can't hear a word you're saying." > > -Greg Graffin (Bad Religion) > Okay for reasons I'm not sure of right now and don't have time to investigate changing the server.call to server.call2 fixed the problem. -- "Hey brother christian with your high and mighty errand, Your actions speak so loud, I can't hear a word you're saying." -Greg Graffin (Bad Religion) ------=_Part_34847_7070039.1184359153517--