[alsa-devel] [PATCH TINYCOMPRESS 2/14] compress: Change compress_write() to take buffer as const void *

Richard Fitzgerald rf at opensource.wolfsonmicro.com
Sun Feb 10 01:04:09 CET 2013


The input buffer to compress_write() should be const, and is
better defined as void * so the caller doesn't have to cast.

diff --git a/compress.c b/compress.c
index 19b9366..ee11988 100644
--- a/compress.c
+++ b/compress.c
@@ -299,11 +299,12 @@ int compress_get_tstamp(struct compress *compress,
 	return 0;
 }
 
-int compress_write(struct compress *compress, char *buf, unsigned int size)
+int compress_write(struct compress *compress, const void *buf, unsigned int size)
 {
 	struct snd_compr_avail avail;
 	struct pollfd fds;
 	int to_write, written, total = 0, ret;
+	const char* cbuf = buf;
 
 	if (!(compress->flags & COMPRESS_IN))
 		return oops(compress, -EINVAL, "Invalid flag set");
@@ -343,12 +344,12 @@ int compress_write(struct compress *compress, char *buf, unsigned int size)
 			to_write =  avail.avail;
 		else
 			to_write = size;
-		written = write(compress->fd, buf, to_write);
+		written = write(compress->fd, cbuf, to_write);
 		if (written < 0)
 			return oops(compress, errno, "write failed!\n");
 
 		size -= written;
-		buf += written;
+		cbuf += written;
 		total += written;
 	}
 	return total;
diff --git a/include/tinycompress/tinycompress.h b/include/tinycompress/tinycompress.h
index 8a98527..e285bd4 100644
--- a/include/tinycompress/tinycompress.h
+++ b/include/tinycompress/tinycompress.h
@@ -125,7 +125,7 @@ int compress_get_tstamp(struct compress *compress,
  * @buf: pointer to data
  * @size: number of bytes to be written
  */
-int compress_write(struct compress *compress, char *buf, unsigned int size);
+int compress_write(struct compress *compress, const void *buf, unsigned int size);
 
 /*
  * compress_read: read data from the compress stream
-- 
1.7.2.5



More information about the Alsa-devel mailing list