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

Bug#174945: Acknowledgement (apt: installing package with lots of conffiles breaks apt)



| Installing mailman 2.1 from .debs, which includes 642 conffiles
| breaks apt.  aptitude stops working, apt-get stops working,
| apt-cache stops working.  I guess the bug is in the Status file
| parser code somewhere.  Purging the package makes apt work again.

I think I have found out what happens.  

In tagfile.h, the default buffer size is set to 32*1024.  However, the
conffiles field of the package in question is 45040 bytes long.  What
happens is the buffer is completely filled and therefore apt stops
working.  The same happens if any other field is larger than 32k bytes
long, say a description.

A workaround would be to double the size of the buffer; a better
solution would be to use dynamic buffers which expands on demand.
(IMHO)

-- 
Tollef Fog Heen                                                        ,''`.
UNIX is user friendly, it's just picky about who its friends are      : :' :
                                                                      `. `' 
                                                                        `-  



Reply to: