[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

'require' does not work under mod_ruby

Frantisek Fuka

2/26/2006 11:25:00 AM

When using: "require 'engine.rbx'" under mod_ruby, I get "File does not
exist" error. However, if I change "require" to "load", it gets loaded
allright. the file and it directory has correct permissions (755).
"Untaint"-ing the file does solve the problem.

I am particularly confused about this error - how can the ruby say the
file does not exist when it evidentnly does?

4 Answers

Jakub Hegenbart

2/26/2006 12:13:00 PM

0

Frantisek Fuka wrote:
> When using: "require 'engine.rbx'" under mod_ruby, I get "File does not
> exist" error. However, if I change "require" to "load", it gets loaded
> allright. the file and it directory has correct permissions (755).
> "Untaint"-ing the file does solve the problem.
>
> I am particularly confused about this error - how can the ruby say the
> file does not exist when it evidentnly does?
>
>
chmod +x engine.rbx

Nezabírá?

Kyosuke ;-)


Frantisek Fuka

2/26/2006 2:45:00 PM

0

A mentioned in my original post, the file already has permissions set
to "755". Thus, "chmod +x" does nothing.

WATANABE Hirofumi

2/26/2006 2:58:00 PM

0

Hi,

"Frantisek Fuka" <fuxoft@gmail.com> writes:

> When using: "require 'engine.rbx'" under mod_ruby, I get "File does not
> exist" error. However, if I change "require" to "load", it gets loaded
> allright. the file and it directory has correct permissions (755).
> "Untaint"-ing the file does solve the problem.
>
> I am particularly confused about this error - how can the ruby say the
> file does not exist when it evidentnly does?

See ri 'Kernel#require'.

If the file has the extension ``.rb'', it is loaded as a source file;
if the extension is ``.so'', ``.o'', or ``.dll'', or whatever the
default shared library extension is on the current platform, Ruby
loads the shared library as a Ruby extension.
Otherwise, Ruby tries adding ``.rb'', ``.so'', and so on to the name.

--
eban


Jakub Hegenbart

2/26/2006 3:20:00 PM

0

WATANABE Hirofumi wrote:
> Hi,
>
> "Frantisek Fuka" <fuxoft@gmail.com> writes:
>
>
>> When using: "require 'engine.rbx'" under mod_ruby, I get "File does not
>> exist" error. However, if I change "require" to "load", it gets loaded
>> allright. the file and it directory has correct permissions (755).
>> "Untaint"-ing the file does solve the problem.
>>
>> I am particularly confused about this error - how can the ruby say the
>> file does not exist when it evidentnly does?
>>
>
> See ri 'Kernel#require'.
>
> If the file has the extension ``.rb'', it is loaded as a source file;
> if the extension is ``.so'', ``.o'', or ``.dll'', or whatever the
> default shared library extension is on the current platform, Ruby
> loads the shared library as a Ruby extension.
> Otherwise, Ruby tries adding ``.rb'', ``.so'', and so on to the name.
>
>
Oops! Right now I tried this, it really behaves this way. I suspected
initially that this was the case, but in a quick experiment it had
worked for both "require" and "load", so I became confused. But now I
realized I tried it with ".rb" extension rather than ".rbx". /me stupid.

I didn't notice the "file" part in the "file _and_ directory have
correct permissions", so the permissions problem as a logical
afterthought and advice didn't strike this obstacle. :-D

Jakub