[pacman-dev] [PATCH 0/9] refactor ini/config parser

Andrew Gregory andrew.gregory.8 at gmail.com
Sat Apr 26 19:56:53 EDT 2014


As the first step to back-end hook support, this patchset makes the ini parser
suitable for sharing between alpm and pacman by moving all error handling from
the ini parser to the _parse_directive callback.  This involves:

* moving debug output to the callback
* allowing empty section names (alpm already rejects empty db names)
* moving Include handling to the callback
* notifying the callback of read errors

In order to do that I also refactored the config callback to use only a single
pass by storing repo information until alpm is initialized and using bitmasks
instead of the ALPM_SIG_*_SET enums to handle siglevel inheritance.

apg

Andrew Gregory (9):
  conf.c: store repo settings in dedicated struct
  conf.c: use masks for siglevel inheritance
  conf.c: parse config in a single pass
  ini.c: remove final callback call
  ini.c: move Include parsing to conf.c
  ini.c: remove unnecessary helper function
  ini.c: remove empty section name restriction
  ini.c: remove useless key check
  ini.c: move error output into conf.c

 lib/libalpm/alpm.h    |   3 -
 lib/libalpm/be_sync.c |   2 +-
 src/pacman/conf.c     | 304 ++++++++++++++++++++++++++++----------------------
 src/pacman/conf.h     |  16 +++
 src/pacman/ini.c      | 147 ++++--------------------
 5 files changed, 208 insertions(+), 264 deletions(-)

-- 
1.9.2



More information about the pacman-dev mailing list