nervo / yuicompressor

16 stars 4 forks source link

2.4.8 Fatal error when file is empty #2

Open dspiegel opened 11 years ago

dspiegel commented 11 years ago

Started getting errors this week following composer update of my project. I have tracked issue down to 2.4.8 yuicomposer.jar. 2.4.7 does not have issue. Fatal error occurs when empty js file is compressed. This empty placeholder file has been in my project for over 6 months without any issues. Now I cannot complete assetic:dump of Symfony2 project.

Ran test on command line using empty js or js with only comments and got same java error. Did not test css to see if it does the same.

'/usr/bin/java' '-jar' '/export/home/dave/Projects/DeviceList2/app/../vendor/nervo/yuicompressor/yuicompressor.jar' '--charset' 'UTF-8' '-o' '/tmp/YUI-OUT-mM21F2' '--type' 'js' '/tmp/YUI-IN-VGNuWR'
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.yahoo.platform.yui.compressor.Bootstrap.main(Bootstrap.java:21)
Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    at java.util.ArrayList.RangeCheck(ArrayList.java:547)
    at java.util.ArrayList.get(ArrayList.java:322)
    at com.yahoo.platform.yui.compressor.JavaScriptCompressor.getToken(JavaScriptCompressor.java:578)
    at com.yahoo.platform.yui.compressor.JavaScriptCompressor.printSymbolTree(JavaScriptCompressor.java:1094)
    at com.yahoo.platform.yui.compressor.JavaScriptCompressor.compress(JavaScriptCompressor.java:556)
    at com.yahoo.platform.yui.compressor.YUICompressor.main(YUICompressor.java:186)
    ... 5 more
nervo commented 11 years ago

Hmmm... Looks like an upstream bug :)

https://github.com/yui/yuicompressor/issues/92