[Spice-devel] [PATCH spice-server] Use PRIxPTR constant for string formatting

Frediano Ziglio fziglio at redhat.com
Tue Jun 26 09:37:25 UTC 2018


> 
> On Fri, Jun 22, 2018 at 11:28:50AM +0100, Frediano Ziglio wrote:
> > These constant are meant to be used in format string for size_t
> > types. Use them for portability.
> 
> Alternatively, this could be G_GSIZE_FORMAT
> 

I would prefer if the types were Gxxx type.
But being C type I prefer the C format.
Note that in another patch for GPid I used G_PID_FORMAT.

Also I prefer C type because they are shorter.

OT: I have a follow up for this adding other changes.

> Christophe
> 
> > 
> > Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> > ---
> >  server/red-record-qxl.c | 4 ++--
> >  server/red-replay-qxl.c | 8 ++++----
> >  2 files changed, 6 insertions(+), 6 deletions(-)
> > 
> > diff --git a/server/red-record-qxl.c b/server/red-record-qxl.c
> > index 5f6b7aeb..0065fc45 100644
> > --- a/server/red-record-qxl.c
> > +++ b/server/red-record-qxl.c
> > @@ -123,7 +123,7 @@ static void write_binary(FILE *fd, const char *prefix,
> > size_t size, const uint8_
> >      }
> >  #endif
> >  
> > -    fprintf(fd, "binary %d %s %zu:", WITH_ZLIB, prefix, size);
> > +    fprintf(fd, "binary %d %s %" PRIuPTR ":", WITH_ZLIB, prefix, size);
> >  #if WITH_ZLIB
> >      zlib_size = zlib_encode(enc, RECORD_ZLIB_DEFAULT_COMPRESSION_LEVEL,
> >      size,
> >          output, sizeof(output));
> > @@ -153,7 +153,7 @@ static size_t red_record_data_chunks_ptr(FILE *fd,
> > const char *prefix,
> >          data_size += cur->data_size;
> >          count_chunks++;
> >      }
> > -    fprintf(fd, "data_chunks %d %zu\n", count_chunks, data_size);
> > +    fprintf(fd, "data_chunks %d %" PRIuPTR "\n", count_chunks, data_size);
> >      memslot_validate_virt(slots, (intptr_t)qxl->data, memslot_id,
> >      qxl->data_size, group_id);
> >      write_binary(fd, prefix, qxl->data_size, qxl->data);
> >  
> > diff --git a/server/red-replay-qxl.c b/server/red-replay-qxl.c
> > index 18f348a1..a23296cf 100644
> > --- a/server/red-replay-qxl.c
> > +++ b/server/red-replay-qxl.c
> > @@ -266,7 +266,7 @@ static replay_t read_binary(SpiceReplay *replay, const
> > char *prefix, size_t *siz
> >              exit(1);
> >          }
> >          if ((ret = inflate(&strm, Z_NO_FLUSH)) != Z_STREAM_END) {
> > -            spice_error("inflate error %d (disc: %ld)", ret, *size -
> > strm.total_out);
> > +            spice_error("inflate error %d (disc: %" PRIdPTR ")", ret,
> > *size - strm.total_out);
> >              if (ret == Z_DATA_ERROR) {
> >                  /* last operation may be wrong. since we do the recording
> >                   * in red_worker, when there is a shutdown from the
> >                   vcpu/io thread
> > @@ -296,7 +296,7 @@ static ssize_t red_replay_data_chunks(SpiceReplay
> > *replay, const char *prefix,
> >      size_t next_data_size;
> >      QXLDataChunk *cur, *next;
> >  
> > -    replay_fscanf(replay, "data_chunks %u %zu\n", &count_chunks,
> > &data_size);
> > +    replay_fscanf(replay, "data_chunks %u %" PRIuPTR "\n", &count_chunks,
> > &data_size);
> >      if (replay->error) {
> >          return -1;
> >      }
> > @@ -475,7 +475,7 @@ static QXLImage *red_replay_image(SpiceReplay *replay,
> > uint32_t flags)
> >          } else {
> >              size = red_replay_data_chunks(replay, "bitmap.data",
> >              (uint8_t**)&qxl->bitmap.data, 0);
> >              if (size != bitmap_size) {
> > -                spice_printerr("bad image, %zu != %zu", size,
> > bitmap_size);
> > +                spice_printerr("bad image, %" PRIuPTR " != %" PRIuPTR,
> > size, bitmap_size);
> >                  return NULL;
> >              }
> >          }
> > @@ -1137,7 +1137,7 @@ static QXLSurfaceCmd
> > *red_replay_surface_cmd(SpiceReplay *replay)
> >          if ((qxl->flags & QXL_SURF_FLAG_KEEP_DATA) != 0) {
> >              read_binary(replay, "data", &read_size,
> >              (uint8_t**)&qxl->u.surface_create.data, 0);
> >              if (read_size != size) {
> > -                spice_printerr("mismatch %zu != %zu", size, read_size);
> > +                spice_printerr("mismatch %" PRIuPTR " != %" PRIuPTR, size,
> > read_size);
> >              }
> >          } else {
> >              qxl->u.surface_create.data =
> >              QXLPHYSICAL_FROM_PTR(replay_malloc(replay, size));

Frediano


More information about the Spice-devel mailing list