UDPSocket#recvfrom throws NullPointerException.
-----------------------------------------------

                 Key: JRUBY-4678
                 URL: http://jira.codehaus.org/browse/JRUBY-4678
             Project: JRuby
          Issue Type: Bug
          Components: Core Classes/Modules
    Affects Versions: JRuby 1.4
         Environment: Windows XP 
P4 2.4 Ghz 
JRuby 1.4.0 
            Reporter: nao16t


UDPSocket#recvfrom throws NullPointerException.
This was found during investigating JRUBY-4627.

C:\>jirb
irb(main):001:0>  require 'socket'
=> true
irb(main):002:0> s = UDPSocket.new
=> #<UDPSocket:0x1f0cf51>
irb(main):003:0> s.send('hello', 0, '127.0.0.1', 162)
=> 5
irb(main):004:0> s.recvfrom(6)
RubyUDPSocket.java:171:in `recvfrom': java.lang.NullPointerException
        from org/jruby/ext/socket/RubyUDPSocket$i_method_0_0$RUBYINVOKER$recvfro
m.gen:-1:in `call'
        from JavaMethod.java:623:in `call'
        from DynamicMethod.java:176:in `call'
        from CachingCallSite.java:310:in `cacheAndCall'
        from CachingCallSite.java:149:in `call'
        from CallOneArgNode.java:57:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from RootNode.java:129:in `interpret'
        from ASTInterpreter.java:98:in `evalWithBinding'
        from RubyKernel.java:966:in `eval'
        from org/jruby/RubyKernel$s_method_0_3$RUBYFRAMEDINVOKER$eval.gen:-1:in
`call'
        from DynamicMethod.java:150:in `call'
        from CachingCallSite.java:67:in `call'
        from FCallManyArgsNode.java:60:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from InterpretedMethod.java:112:in `call'
        from InterpretedMethod.java:124:in `call'
        from DefaultMethod.java:144:in `call'
        from CachingCallSite.java:67:in `call'
        from CallManyArgsNode.java:59:in `interpret'
        from FCallOneArgNode.java:36:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from InterpretedMethod.java:210:in `call'
        from DefaultMethod.java:185:in `call'
        from CachingCallSite.java:187:in `call'
        from CallTwoArgNode.java:59:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from RescueNode.java:225:in `executeBody'
        from RescueNode.java:147:in `interpretWithJavaExceptions'
        from RescueNode.java:110:in `interpret'
        from BeginNode.java:83:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from InterpretedBlock.java:317:in `evalBlockBody'
        from InterpretedBlock.java:251:in `yield'
        from InterpretedBlock.java:185:in `yieldSpecific'
        from Block.java:99:in `yieldSpecific'
        from ZYieldNode.java:25:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from EnsureNode.java:96:in `interpret'
        from BeginNode.java:83:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from InterpretedMethod.java:192:in `call'
        from DefaultMethod.java:177:in `call'
        from CachingCallSite.java:156:in `callBlock'
        from CachingCallSite.java:173:in `callIter'
        from FCallOneArgBlockNode.java:34:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from InterpretedBlock.java:317:in `evalBlockBody'
        from InterpretedBlock.java:216:in `yieldSpecific'
        from Block.java:117:in `yieldSpecific'
        from YieldTwoNode.java:31:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from IfNode.java:117:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from RescueNode.java:225:in `executeBody'
        from RescueNode.java:147:in `interpretWithJavaExceptions'
        from RescueNode.java:110:in `interpret'
        from BeginNode.java:83:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from InterpretedBlock.java:317:in `evalBlockBody'
        from InterpretedBlock.java:268:in `yield'
        from Block.java:194:in `yield'
        from RubyKernel.java:1182:in `loop_1_9'
        from org/jruby/RubyKernel$s_method_0_0$RUBYFRAMEDINVOKER$loop_1_9.gen:-1
:in `call'
        from CachingCallSite.java:300:in `cacheAndCall'
        from CachingCallSite.java:118:in `callBlock'
        from CachingCallSite.java:133:in `callIter'
        from FCallNoArgBlockNode.java:32:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from InterpretedBlock.java:317:in `evalBlockBody'
        from InterpretedBlock.java:268:in `yield'
        from Block.java:194:in `yield'
        from RubyKernel.java:1014:in `rbCatch'
        from org/jruby/RubyKernel$s_method_1_0$RUBYFRAMEDINVOKER$rbCatch.gen:-1:
in `call'
        from CachingCallSite.java:320:in `cacheAndCall'
        from CachingCallSite.java:158:in `callBlock'
        from CachingCallSite.java:173:in `callIter'
        from FCallOneArgBlockNode.java:34:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from InterpretedMethod.java:155:in `call'
        from DefaultMethod.java:161:in `call'
        from CachingCallSite.java:300:in `cacheAndCall'
        from CachingCallSite.java:118:in `callBlock'
        from CachingCallSite.java:123:in `call'
        from CallNoArgBlockNode.java:64:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from InterpretedMethod.java:136:in `call'
        from DefaultMethod.java:153:in `call'
        from CachingCallSite.java:290:in `cacheAndCall'
        from CachingCallSite.java:109:in `call'
        from CallNoArgNode.java:61:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from InterpretedBlock.java:317:in `evalBlockBody'
        from InterpretedBlock.java:268:in `yield'
        from Block.java:194:in `yield'
        from RubyKernel.java:1014:in `rbCatch'
        from org/jruby/RubyKernel$s_method_1_0$RUBYFRAMEDINVOKER$rbCatch.gen:-1:
in `call'
        from CachingCallSite.java:320:in `cacheAndCall'
        from CachingCallSite.java:158:in `callBlock'
        from CachingCallSite.java:173:in `callIter'
        from FCallOneArgBlockNode.java:34:in `interpret'
        from NewlineNode.java:104:in `interpret'
        from BlockNode.java:71:in `interpret'
        from InterpretedMethod.java:173:in `call'
        from DefaultMethod.java:169:in `call'
        from CachingCallSite.java:310:in `cacheAndCall'
        from CachingCallSite.java:149:in `call'
        from jirb:19:in `__file__'
        from jirb:-1:in `load'
        from Ruby.java:628:in `runScript'
        from Ruby.java:550:in `runNormally'
        from Ruby.java:396:in `runFromMain'
        from Main.java:272:in `run'
        from Main.java:117:in `run'
        from Main.java:97:in `main'


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to