> > + for ( ; sz > 0; sz--) > > + virBufferVSprintf(&buf, "%08x", bitmap->map[sz - 1]); > > I probably would have written: > > while (sz--) > virBufferVSprintf(&buf, "%08x", bitmap->map[sz]); Yeah, it looks nicer; I'll use that since I'll send a new version anyway. > since sz is guaranteed to be non-zero to start with. But your way > works, and the compiler (hopefully) generates the same code (when > optimizing). Not that this is in a performance critical path requiring any optimizations :-) > Problem - "%08x" is not portable. bitmap->map[x] is a uint32_t, which > means we need to use "%08"PRIx32 (since some platforms declare uint32_t > as long rather than int) to avoid a gcc warning. Ah, thanks for spotting that. I always forget about this dark side of C. > For that matter, why did we make the bitset use uint32_t as the > underlying type, instead of just using long? Right, I'll fix that first followed by a v2 of this patch. Jirka -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list