Thank you for noticing the glitch...
I know where does it come from. The fact is, in order to position the shield accurately on top of the unit. I had to use _negative_ offset values in the shield specification
(that is the "x_top_left" on the spec file). Now, this is a hack, but it worked so far.
It seems that the client you used to make the snapshot behaves a little worse with negative offsets. The problem can be solved in different ways:
1) simply put the offset to 0 ("x_top_left=0") in the file shields.spec. This should solve it on any client, but would also move the shield 12 pixels on the right in the game, which looks bad, very bad!
It would also take to readjust the "shadow shield", the little extruding part of the shield that is used when more than one unit is stacked.
2) put the offset to 0 ("x_top_left=0") AND add 12 columns of empty black pixels at the left of the image "shields.png". This also solves the problem, and leaves the graphics as it should be. The "shield.png" file must be duplicated, enlarged with the 12 pixels, and included in the "Civ2gfx" package (also in the "shield.spec" file the line <> must be updated with <> of course). The only thing is that this way the CivIIgfx set would need a custom shield.png files, which means that every time someone will add some new shield it will take to manually adapt the file again...
3) adapt the client code to behave correctly with negative offset value (making it assume transparent all the pixels outside the image, in particular, the ones with negative coordinates).