Bad Request when trying to change another user's MUC affiliation

When I am the owner of a MUC and try to grant owner-status to someone else, while not being an occupant of the room at that moment, the IQ results in a bad request.

Example IQ Format:

<iq from='crone1@shakespeare.lit/desktop'
  <query xmlns=''>
    <item affiliation='owner'

A little bit of debugging shows, that org.jivesoftware.openfire.muc.spi.LocalMUCUser just ignores any IQ when the sender did not join the room first. More precisely, these lines of code:

// Packets to a specific node/group/room
MUCRole role = roles.get(group);
if (role == null) {
    Log.debug( "Ignoring stanza received from a non-occupant of '{}': {}", group, packet.toXML() );
    if ( packet.isRequest() )
      // If a non-occupant sends a disco to an address of the form <room@service/nick>,
      // a MUC service MUST return a <bad-request/> error.
      sendErrorPacket( packet, PacketError.Condition.bad_request );

Besides that that comment there does not seem quite correct imho, this should not happen at all with any IQ directed to a Chatroom. Of course you could just join that room to bypass this check, but XEP-0045 does not state that you have to join the room in order to change affiliations. So Openfire should not demand it, too.