load_png_*: avoid allocating intermediate row pointer buffer