diff src/data.c @ 109859:68616bb3ae25

merged from trunk
author Joakim <joakim@localhost.localdomain>
date Mon, 14 Jun 2010 11:48:51 +0200
parents 5582106cddf0
children 2bc9a0c04c87
line wrap: on
line diff
--- a/src/data.c	Mon Jun 14 11:16:39 2010 +0200
+++ b/src/data.c	Mon Jun 14 11:48:51 2010 +0200
@@ -959,14 +959,14 @@
       CHECK_NUMBER (newval);
       *XINTFWD (valcontents)->intvar = XINT (newval);
       break;
-      
+
     case Lisp_Fwd_Bool:
       *XBOOLFWD (valcontents)->boolvar = !NILP (newval);
       break;
-      
+
     case Lisp_Fwd_Obj:
       *XOBJFWD (valcontents)->objvar = newval;
-      
+
       /* If this variable is a default for something stored
 	 in the buffer itself, such as default-fill-column,
 	 find the buffers that don't have local values for it
@@ -977,12 +977,12 @@
 	  int offset = ((char *) XOBJFWD (valcontents)->objvar
 			- (char *) &buffer_defaults);
 	  int idx = PER_BUFFER_IDX (offset);
-	  
+
 	  Lisp_Object tail;
-	  
+
 	  if (idx <= 0)
 	    break;
-	  
+
 	  for (tail = Vbuffer_alist; CONSP (tail); tail = XCDR (tail))
 	    {
 	      Lisp_Object buf;
@@ -1943,7 +1943,7 @@
 	Lisp_Object tail, elt, tmp;
 	struct Lisp_Buffer_Local_Value *blv = SYMBOL_BLV (sym);
 	XSETBUFFER (tmp, buf);
-	
+
 	for (tail = buf->local_var_alist; CONSP (tail); tail = XCDR (tail))
 	  {
 	    elt = XCAR (tail);
@@ -2274,7 +2274,7 @@
 
       idxval_byte = string_char_to_byte (array, idxval);
       p1 = SDATA (array) + idxval_byte;
-      PARSE_MULTIBYTE_SEQ (p1, nbytes - idxval_byte, prev_bytes);
+      prev_bytes = BYTES_BY_CHAR_HEAD (*p1);
       new_bytes = CHAR_STRING (XINT (newelt), p0);
       if (prev_bytes != new_bytes)
 	{