Mercurial > vim
comparison src/memfile.c @ 1230:cab25717c6a6 v7.1b.002
updated for version 7.1b-002
author | vimboss |
---|---|
date | Fri, 11 May 2007 18:15:45 +0000 |
parents | a49d06539452 |
children | ebe059f69b9e |
comparison
equal
deleted
inserted
replaced
1229:198a695ca8e7 | 1230:cab25717c6a6 |
---|---|
188 mfp->mf_blocknr_max = (blocknr_T)((size + mfp->mf_page_size - 1) | 188 mfp->mf_blocknr_max = (blocknr_T)((size + mfp->mf_page_size - 1) |
189 / mfp->mf_page_size); | 189 / mfp->mf_page_size); |
190 mfp->mf_blocknr_min = -1; | 190 mfp->mf_blocknr_min = -1; |
191 mfp->mf_neg_count = 0; | 191 mfp->mf_neg_count = 0; |
192 mfp->mf_infile_count = mfp->mf_blocknr_max; | 192 mfp->mf_infile_count = mfp->mf_blocknr_max; |
193 mfp->mf_used_count_max = p_mm * 1024 / mfp->mf_page_size; | 193 |
194 /* | |
195 * Compute maximum number of pages ('maxmem' is in Kbyte): | |
196 * 'mammem' * 1Kbyte / page-size-in-bytes. | |
197 * Avoid overflow by first reducing page size as much as possible. | |
198 */ | |
199 { | |
200 int shift = 10; | |
201 unsigned page_size = mfp->mf_page_size; | |
202 | |
203 while (shift > 0 && (page_size & 1) == 0) | |
204 { | |
205 page_size = page_size >> 1; | |
206 --shift; | |
207 } | |
208 mfp->mf_used_count_max = (p_mm << shift) / page_size; | |
209 if (mfp->mf_used_count_max < 10) | |
210 mfp->mf_used_count_max = 10; | |
211 } | |
194 | 212 |
195 return mfp; | 213 return mfp; |
196 } | 214 } |
197 | 215 |
198 /* | 216 /* |