diff options
Diffstat (limited to 'lib/xz')
| -rw-r--r-- | lib/xz/Kconfig | 24 | ||||
| -rw-r--r-- | lib/xz/xz_dec_lzma2.c | 4 | 
2 files changed, 16 insertions, 12 deletions
diff --git a/lib/xz/Kconfig b/lib/xz/Kconfig index 08837db52d9..12d2d777f36 100644 --- a/lib/xz/Kconfig +++ b/lib/xz/Kconfig @@ -9,33 +9,33 @@ config XZ_DEC  if XZ_DEC  config XZ_DEC_X86 -	bool "x86 BCJ filter decoder" -	default y if X86 +	bool "x86 BCJ filter decoder" if EXPERT +	default y  	select XZ_DEC_BCJ  config XZ_DEC_POWERPC -	bool "PowerPC BCJ filter decoder" -	default y if PPC +	bool "PowerPC BCJ filter decoder" if EXPERT +	default y  	select XZ_DEC_BCJ  config XZ_DEC_IA64 -	bool "IA-64 BCJ filter decoder" -	default y if IA64 +	bool "IA-64 BCJ filter decoder" if EXPERT +	default y  	select XZ_DEC_BCJ  config XZ_DEC_ARM -	bool "ARM BCJ filter decoder" -	default y if ARM +	bool "ARM BCJ filter decoder" if EXPERT +	default y  	select XZ_DEC_BCJ  config XZ_DEC_ARMTHUMB -	bool "ARM-Thumb BCJ filter decoder" -	default y if (ARM && ARM_THUMB) +	bool "ARM-Thumb BCJ filter decoder" if EXPERT +	default y  	select XZ_DEC_BCJ  config XZ_DEC_SPARC -	bool "SPARC BCJ filter decoder" -	default y if SPARC +	bool "SPARC BCJ filter decoder" if EXPERT +	default y  	select XZ_DEC_BCJ  endif diff --git a/lib/xz/xz_dec_lzma2.c b/lib/xz/xz_dec_lzma2.c index a6cdc969ea4..08c3c804999 100644 --- a/lib/xz/xz_dec_lzma2.c +++ b/lib/xz/xz_dec_lzma2.c @@ -1043,6 +1043,8 @@ XZ_EXTERN enum xz_ret xz_dec_lzma2_run(struct xz_dec_lzma2 *s,  			s->lzma2.sequence = SEQ_LZMA_PREPARE; +		/* Fall through */ +  		case SEQ_LZMA_PREPARE:  			if (s->lzma2.compressed < RC_INIT_BYTES)  				return XZ_DATA_ERROR; @@ -1053,6 +1055,8 @@ XZ_EXTERN enum xz_ret xz_dec_lzma2_run(struct xz_dec_lzma2 *s,  			s->lzma2.compressed -= RC_INIT_BYTES;  			s->lzma2.sequence = SEQ_LZMA_RUN; +		/* Fall through */ +  		case SEQ_LZMA_RUN:  			/*  			 * Set dictionary limit to indicate how much we want  | 
