diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | Completion/Base/Utility/_store_cache | 11 |
2 files changed, 6 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog index 2e4d1fbdf..dd0511c67 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2015-05-26 Peter Stephenson <p.stephenson@samsung.com> + * see 35268: revert 34476 (ae7dcab) as it seems to be having + effects beyond the intended optimisation of completion caching. + To be investigated further after the release. + * Han Pingtian: 35295: Functions/Zftp/zfcd_match: be more inventive zftp directory listing. diff --git a/Completion/Base/Utility/_store_cache b/Completion/Base/Utility/_store_cache index 8feaee6f7..86e72e9a9 100644 --- a/Completion/Base/Utility/_store_cache +++ b/Completion/Base/Utility/_store_cache @@ -46,15 +46,8 @@ if zstyle -t ":completion:${curcontext}:" use-cache; then for var; do case ${(Pt)var} in (*readonly*) ;; - (*(association|array)*) - # Dump the array as a here-document to reduce parsing overhead - # when reloading the cache with "source" from _retrieve_cache - print -r "$var=( "'"${(zQ)$(<<\EO:'"$var" - print -r "${(kv@Pqq)^^var}" - print -r "EO:$var" - print -r ')}" )' - ;; - (*) print -r "$var=${(Pqq)^^var}";; + (*(association|array)*) print -r "$var=( ${(kv@Pqq)^^var} )";; + (*) print -r "$var=${(Pqq)^^var}";; esac done >! "$_cache_dir/$_cache_ident" else |