summaryrefslogtreecommitdiff
path: root/textproc/modlogan/files/patch-fix_segfault
blob: 4f957af033d4f85f03d8acf949b0a47973bfe25f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Index: mconfig.c
===================================================================
RCS file: /cvsroot/modlogan/modlogan/src/mconfig.c,v
retrieving revision 1.40
diff -c -r1.40 mconfig.c
*** src/mconfig.c	2001/09/23 22:54:00	1.40
--- src/mconfig.c	2001/09/24 09:29:37
***************
*** 665,670 ****
--- 665,672 ----
  int mconfig_free(mconfig *conf) {
  	if (!conf) return -1;
  	
+ 	mplugins_free(conf);
+ 	
  	if (conf->outputdir)	free(conf->outputdir);
  	
  #ifdef HAVE_LIBADNS
***************
*** 672,678 ****
  	if (conf->adns)	free(conf->adns);
  	if (conf->query_hash) mhash_free(conf->query_hash);
  #endif
- 	mplugins_free(conf);
  	mlist_free(conf->loadplugins);
  	mlist_free(conf->includepath);
  	
--- 674,679 ----
Index: misc.c
===================================================================
RCS file: /cvsroot/modlogan/modlogan/src/misc.c,v
retrieving revision 1.13
diff -c -r1.13 misc.c
*** src/misc.c	2001/09/04 22:47:23	1.13
--- src/misc.c	2001/09/24 09:29:37
***************
*** 278,283 ****
--- 278,285 ----
  	/* x and y denote the position in source respective destination string */
  	register int x, y;
  	unsigned char *str;
+ 	
+ 	if (!s) return NULL;
  
  	/* allocate memory for encoded string */
  	str = (unsigned char *) malloc(3 * strlen(s) + 1);
***************
*** 307,312 ****
--- 309,316 ----
  	/* work pointers */
  	unsigned char *data;
  	unsigned char *dest;
+ 	
+ 	if (!s) return NULL;
  	
  	/* allocate memory for decoded string */
  	str = (unsigned char *) malloc(strlen(s) + 1);