The following is based on decompiled version of Minecraft 1.9 using MCP 9.24 beta. All method and class names are the names used in the decompiled version.
The reason why this is happening is because the net.minecraft.client.multiplayer.WorldClient.doVoidFogParticles(int, int, int) method only tests if the player holds a barrier block in his mainhand.
publicvoid doVoidFogParticles(int posX, int posY, int posZ)
{
int i = 32;
Random random = new Random();
// Replaced this//ItemStack itemstack = this.mc.thePlayer.getHeldItemMainhand();//boolean flag = this.mc.playerController.getCurrentGameType() == WorldSettings.GameType.CREATIVE && itemstack != null && Block.getBlockFromItem(itemstack.getItem()) == Blocks.barrier;
ItemStack itemStackMainhand = this.mc.thePlayer.getHeldItemMainhand();
ItemStack itemStackOffhand = this.mc.thePlayer.getHeldItemOffhand();
boolean flag = this.mc.playerController.getCurrentGameType() == WorldSettings.GameType.CREATIVE && (
(itemStackMainhand != null && Block.getBlockFromItem(itemStackMainhand.getItem()) == Blocks.barrier) ||
(itemStackOffhand != null && Block.getBlockFromItem(itemStackOffhand.getItem()) == Blocks.barrier));
BlockPos.MutableBlockPos blockpos$mutableblockpos = new BlockPos.MutableBlockPos();
for (int j = 0; j < 667; ++j)
{
this.func_184153_a(posX, posY, posZ, 16, random, flag, blockpos$mutableblockpos);
this.func_184153_a(posX, posY, posZ, 32, random, flag, blockpos$mutableblockpos);
}
}
Confirmed