[pacman-dev] [PATCH] ini.c: give recursion limit file scope

Andrew Gregory andrew.gregory.8 at gmail.com
Fri Aug 2 08:29:03 EDT 2013


The recursion limit is an artificial limitation imposed to prevent
memory exhaustion in a recursive function.  Giving it file-level scope
increases its visibility.

Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
---
 src/pacman/ini.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/pacman/ini.c b/src/pacman/ini.c
index 2e677e0..cd7741d 100644
--- a/src/pacman/ini.c
+++ b/src/pacman/ini.c
@@ -27,6 +27,8 @@
 #include "ini.h"
 #include "util.h"
 
+static const int ini_max_recursion = 10;
+
 /**
  * @brief INI parser backend.
  *
@@ -46,11 +48,11 @@ static int _parse_ini(const char *file, ini_parser_fn cb, void *data,
 	FILE *fp = NULL;
 	int linenum = 0;
 	int ret = 0;
-	const int max_depth = 10;
 
-	if(depth >= max_depth) {
+	if(depth >= ini_max_recursion) {
 		pm_printf(ALPM_LOG_ERROR,
-				_("config parsing exceeded max recursion depth of %d.\n"), max_depth);
+				_("config parsing exceeded max recursion depth of %d.\n"),
+				ini_max_recursion);
 		ret = 1;
 		goto cleanup;
 	}
-- 
1.8.3.4



More information about the pacman-dev mailing list