Thanks for the update. As already pointed out, the error is caused by your input, so you would still have to check the aforementioned line of code, which seems to use a wrong condition.
Your code runs fine with the proper input (and an unrelated fix to the output channels of the new conv layer):
def Inception(in_planes, out_planes, pretrained=False):
    if pretrained is True:       
        model = models.inception_v3(pretrained=True)
        print("Pretrained model is loaded")
    else:        
        model = models.inception_v3(pretrained=False)
    if in_planes == 4:
        model.Conv2d_1a_3x3.conv=nn.Conv2d(4, 32, kernel_size=3, stride=2, padding=2, bias=False)
        nn.init.kaiming_normal_(model.Conv2d_1a_3x3.conv.weight, mode='fan_out', nonlinearity='relu')
    # Parameters of newly constructed modules have requires_grad=True by default
    model.fc = nn.Linear(model.fc.in_features, out_planes)
    return model


model = Inception(in_planes=4, out_planes=1, pretrained=False)
x = torch.randn(2, 4, 299, 299)
out = model(x)
print(out.logits.shape)
> torch.Size([2, 1])