]> Dogcows Code - chaz/tar/blobdiff - src/buffer.c
* src/buffer.c (record_buffer_aligned): New var.
[chaz/tar] / src / buffer.c
index c0cedc3c8e9fa8be2d293268f944d424f2bdb453..a6daf3c9b3ae61774c52e09a61f913b211d09b9b 100644 (file)
@@ -44,6 +44,7 @@
 static tarlong prev_written;   /* bytes written on previous volumes */
 static tarlong bytes_written;  /* bytes written on this volume */
 static void *record_buffer[2]; /* allocated memory */
+union block *record_buffer_aligned[2];
 static int record_index;
 
 /* FIXME: The following variables should ideally be static to this
@@ -369,10 +370,11 @@ xclose (int fd)
 static void
 init_buffer ()
 {
-  if (!record_buffer[record_index])
-    page_aligned_alloc (&record_buffer[record_index], record_size);
+  if (! record_buffer_aligned[record_index])
+    record_buffer_aligned[record_index] =
+      page_aligned_alloc (&record_buffer[record_index], record_size);
 
-  record_start = record_buffer[record_index];
+  record_start = record_buffer_aligned[record_index];
   current_block = record_start;
   record_end = record_start + blocking_factor;
 }
This page took 0.019737 seconds and 4 git commands to generate.