- patchlevel 106
This commit is contained in:
		
							parent
							
								
									7f03c066f1
								
							
						
					
					
						commit
						913533ea8d
					
				
							
								
								
									
										103
									
								
								7.2.106
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								7.2.106
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,103 @@ | |||||||
|  | To: vim-dev@vim.org | ||||||
|  | Subject: Patch 7.2.106 | ||||||
|  | Fcc: outbox | ||||||
|  | From: Bram Moolenaar <Bram@moolenaar.net> | ||||||
|  | Mime-Version: 1.0 | ||||||
|  | Content-Type: text/plain; charset=ISO-8859-1 | ||||||
|  | Content-Transfer-Encoding: 8bit | ||||||
|  | ------------ | ||||||
|  | 
 | ||||||
|  | Patch 7.2.106 | ||||||
|  | Problem:    Endless loop when using "]s" in HTML when there are no | ||||||
|  | 	    misspellings. (Ingo Karkat) | ||||||
|  | Solution:   Break the search loop.  Also fix pointer alignment for systems | ||||||
|  | 	    with pointers larger than int. | ||||||
|  | Files:	    src/spell.c | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | *** ../vim-7.2.105/src/spell.c	Tue Dec  9 22:34:02 2008 | ||||||
|  | --- src/spell.c	Wed Feb 11 17:54:50 2009 | ||||||
|  | *************** | ||||||
|  | *** 2376,2382 **** | ||||||
|  |    | ||||||
|  |   	    /* If we are back at the starting line and there is no match then | ||||||
|  |   	     * give up. */ | ||||||
|  | ! 	    if (lnum == wp->w_cursor.lnum && !found_one) | ||||||
|  |   		break; | ||||||
|  |    | ||||||
|  |   	    /* Skip the characters at the start of the next line that were | ||||||
|  | --- 2376,2382 ---- | ||||||
|  |    | ||||||
|  |   	    /* If we are back at the starting line and there is no match then | ||||||
|  |   	     * give up. */ | ||||||
|  | ! 	    if (lnum == wp->w_cursor.lnum && (!found_one || wrapped)) | ||||||
|  |   		break; | ||||||
|  |    | ||||||
|  |   	    /* Skip the characters at the start of the next line that were | ||||||
|  | *************** | ||||||
|  | *** 4956,4968 **** | ||||||
|  |    * Structure that is used to store the items in the word tree.  This avoids | ||||||
|  |    * the need to keep track of each allocated thing, everything is freed all at | ||||||
|  |    * once after ":mkspell" is done. | ||||||
|  |    */ | ||||||
|  |   #define  SBLOCKSIZE 16000	/* size of sb_data */ | ||||||
|  |   typedef struct sblock_S sblock_T; | ||||||
|  |   struct sblock_S | ||||||
|  |   { | ||||||
|  | -     sblock_T	*sb_next;	/* next block in list */ | ||||||
|  |       int		sb_used;	/* nr of bytes already in use */ | ||||||
|  |       char_u	sb_data[1];	/* data, actually longer */ | ||||||
|  |   }; | ||||||
|  |    | ||||||
|  | --- 4956,4971 ---- | ||||||
|  |    * Structure that is used to store the items in the word tree.  This avoids | ||||||
|  |    * the need to keep track of each allocated thing, everything is freed all at | ||||||
|  |    * once after ":mkspell" is done. | ||||||
|  | +  * Note: "sb_next" must be just before "sb_data" to make sure the alignment of | ||||||
|  | +  * "sb_data" is correct for systems where pointers must be aligned on | ||||||
|  | +  * pointer-size boundaries and sizeof(pointer) > sizeof(int) (e.g., Sparc). | ||||||
|  |    */ | ||||||
|  |   #define  SBLOCKSIZE 16000	/* size of sb_data */ | ||||||
|  |   typedef struct sblock_S sblock_T; | ||||||
|  |   struct sblock_S | ||||||
|  |   { | ||||||
|  |       int		sb_used;	/* nr of bytes already in use */ | ||||||
|  | +     sblock_T	*sb_next;	/* next block in list */ | ||||||
|  |       char_u	sb_data[1];	/* data, actually longer */ | ||||||
|  |   }; | ||||||
|  |    | ||||||
|  | *************** | ||||||
|  | *** 15011,15017 **** | ||||||
|  |    | ||||||
|  |   	case 0: | ||||||
|  |   	    /* | ||||||
|  | ! 	     * Lenghts are equal, thus changes must result in same length: An | ||||||
|  |   	     * insert is only possible in combination with a delete. | ||||||
|  |   	     * 1: check if for identical strings | ||||||
|  |   	     */ | ||||||
|  | --- 15014,15020 ---- | ||||||
|  |    | ||||||
|  |   	case 0: | ||||||
|  |   	    /* | ||||||
|  | ! 	     * Lengths are equal, thus changes must result in same length: An | ||||||
|  |   	     * insert is only possible in combination with a delete. | ||||||
|  |   	     * 1: check if for identical strings | ||||||
|  |   	     */ | ||||||
|  | *** ../vim-7.2.105/src/version.c	Wed Feb 11 16:45:56 2009 | ||||||
|  | --- src/version.c	Wed Feb 11 17:56:34 2009 | ||||||
|  | *************** | ||||||
|  | *** 678,679 **** | ||||||
|  | --- 678,681 ---- | ||||||
|  |   {   /* Add new patch number below this line */ | ||||||
|  | + /**/ | ||||||
|  | +     106, | ||||||
|  |   /**/ | ||||||
|  | 
 | ||||||
|  | --  | ||||||
|  | If bankers can count, how come they have eight windows and | ||||||
|  | only four tellers? | ||||||
|  | 
 | ||||||
|  |  /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\ | ||||||
|  | ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ | ||||||
|  | \\\        download, build and distribute -- http://www.A-A-P.org        /// | ||||||
|  |  \\\            help me help AIDS victims -- http://ICCF-Holland.org    /// | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user