[ale] found a bug in an open source API: It 'Broke' under linux.

Joshua jrtroberts at gmail.com
Sat Feb 12 14:53:16 EST 2011


 I am working with an API for currency conversion from 
http://www.thomasknierim.com/index.php?s=currencyconverter&Submit=Search 
<http://www.thomasknierim.com/index.php?s=currencyconverter&Submit=Search>

It is all written is Java.

The initCacheFile()  method worked fine under windows, but it broke 
under linux. 

The original code grabbed the path to the java temp directory and then 
concatenated  a file name onto the end of it.   I do not know what it 
produces under windows, but my suspicion is that windows is something 
like </driveletter:\pathtotemp\/>  with the trailing '\' included.

Under linux the call to return the temp directory returns '/tmp' and 
then the concatenating of '/filename/'  creates a file named 
/tmp/filename/ instead of /tmp//filename/  so the application was trying 
to write to / where it did not have permissions.  So I had to write a 
fix.  Still not sure the fix is this best.


Maybe someone can look at the code I wrote and let me know.

http://pastebin.com/vsC6vZRU

The old code is commented out.

Joshua Roberts


More information about the Ale mailing list