gvfs r2259 - in trunk: . client



Author: alexl
Date: Fri Feb 27 13:24:04 2009
New Revision: 2259
URL: http://svn.gnome.org/viewvc/gvfs?rev=2259&view=rev

Log:
2009-02-27  Alexander Larsson  <alexl redhat com>

        * client/gdaemonfileoutputstream.c:
        Add and use g_string_remove_in_front helper function.




Modified:
   trunk/ChangeLog
   trunk/client/gdaemonfileoutputstream.c

Modified: trunk/client/gdaemonfileoutputstream.c
==============================================================================
--- trunk/client/gdaemonfileoutputstream.c	(original)
+++ trunk/client/gdaemonfileoutputstream.c	Fri Feb 27 13:24:04 2009
@@ -193,6 +193,17 @@
 	       G_TYPE_FILE_OUTPUT_STREAM)
 
 static void
+g_string_remove_in_front (GString *string,
+			  gsize bytes)
+{
+  memmove (string->str,
+	   string->str + bytes,
+	   string->len - bytes);
+  g_string_truncate (string,
+		     string->len - bytes);
+}
+
+static void
 g_daemon_file_output_stream_finalize (GObject *object)
 {
   GDaemonFileOutputStream *file;
@@ -461,11 +472,8 @@
 	  
 	  if (io_op->io_res < file->output_buffer->len)
 	    {
-	      memcpy (file->output_buffer->str,
-		      file->output_buffer->str + io_op->io_res,
-		      file->output_buffer->len - io_op->io_res);
-	      g_string_truncate (file->output_buffer,
-				 file->output_buffer->len - io_op->io_res);
+	      g_string_remove_in_front (file->output_buffer,
+					io_op->io_res);
 	      io_op->io_buffer = file->output_buffer->str;
 	      io_op->io_size = file->output_buffer->len;
 	      io_op->io_allow_cancel = FALSE;
@@ -639,11 +647,8 @@
 
 	  if (io_op->io_res < file->output_buffer->len)
 	    {
-	      memcpy (file->output_buffer->str,
-		      file->output_buffer->str + io_op->io_res,
-		      file->output_buffer->len - io_op->io_res);
-	      g_string_truncate (file->output_buffer,
-				 file->output_buffer->len - io_op->io_res);
+	      g_string_remove_in_front (file->output_buffer,
+					io_op->io_res);
 	      io_op->io_buffer = file->output_buffer->str;
 	      io_op->io_size = file->output_buffer->len;
 	      io_op->io_allow_cancel = FALSE;
@@ -834,11 +839,8 @@
 
 	  if (io_op->io_res < file->output_buffer->len)
 	    {
-	      memcpy (file->output_buffer->str,
-		      file->output_buffer->str + io_op->io_res,
-		      file->output_buffer->len - io_op->io_res);
-	      g_string_truncate (file->output_buffer,
-				 file->output_buffer->len - io_op->io_res);
+	      g_string_remove_in_front (file->output_buffer,
+					io_op->io_res);
 	      io_op->io_buffer = file->output_buffer->str;
 	      io_op->io_size = file->output_buffer->len;
 	      io_op->io_allow_cancel = FALSE;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]