Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-51955

SlaveComputer#setChannel(Channel,OutputStream,Channel.Listener) may throw null in the case of valid API usages


    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • core

      The second parameter for SlaveComputer#setChannel(Channel,OutputStream,Channel.Listener) is launchLog.

      According to Javadoc of another method, it may be null. " If non-null, receive the portion of data in <tt>is</tt> before the data goes into the binary mode.

      public void setChannel(@Nonnull InputStream in, @Nonnull OutputStream out,
                                 @CheckForNull OutputStream launchLog,
                                 @CheckForNull Channel.Listener listener

      If somebody really passes null to that method the underlying 3-argument method will fail with NPE. Although I think that loggers should be always passed, I think that the valid fix would be to have null handling so that API users do not get into the same risk

            oleg_nenashev Oleg Nenashev
            oleg_nenashev Oleg Nenashev
            0 Vote for this issue
            1 Start watching this issue