Dolda2000 GitWeb
/
doldaconnect.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Incremental work on ADC.
[doldaconnect.git]
/
daemon
/
search.c
diff --git
a/daemon/search.c
b/daemon/search.c
index
d16e5a0
..
d2d9969
100644
(file)
--- a/
daemon/search.c
+++ b/
daemon/search.c
@@
-1,6
+1,6
@@
/*
* Dolda Connect - Modular multiuser Direct Connect-style client
/*
* Dolda Connect - Modular multiuser Direct Connect-style client
- * Copyright (C) 2004 Fredrik Tolf
(fredrik@dolda2000.com)
+ * Copyright (C) 2004 Fredrik Tolf
<fredrik@dolda2000.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@
-17,7
+17,6
@@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <stdlib.h>
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <stdlib.h>
-#include <malloc.h>
#include <wchar.h>
#include <wctype.h>
#include <errno.h>
#include <wchar.h>
#include <wctype.h>
#include <errno.h>
@@
-396,10
+395,12
@@
static struct reinfo analyzere(wchar_t *re, wchar_t **endret, wchar_t endc)
if(ret.begstr != NULL)
{
for(i = 0; (sinf.begstr[i] != L'\0') && (ret.begstr != L'\0') && (ret.begstr[i] == sinf.begstr[i]); i++);
if(ret.begstr != NULL)
{
for(i = 0; (sinf.begstr[i] != L'\0') && (ret.begstr != L'\0') && (ret.begstr[i] == sinf.begstr[i]); i++);
- if(i == 0)
+ if(i == 0)
{
free(ret.begstr);
free(ret.begstr);
- else
+ ret.begstr = NULL;
+ } else {
ret.begstr[i] = L'\0';
ret.begstr[i] = L'\0';
+ }
}
free(sinf.begstr);
} else {
}
free(sinf.begstr);
} else {
@@
-424,10
+425,12
@@
static struct reinfo analyzere(wchar_t *re, wchar_t **endret, wchar_t endc)
maxlen = len1;
}
for(i = 1; (i <= minlen) && (ret.endstr[len1 - i] == sinf.endstr[len2 - i]); i++);
maxlen = len1;
}
for(i = 1; (i <= minlen) && (ret.endstr[len1 - i] == sinf.endstr[len2 - i]); i++);
- if(i == 1)
+ if(i == 1)
{
free(ret.endstr);
free(ret.endstr);
- else if(i <= maxlen)
+ ret.endstr = NULL;
+ } else if(i <= maxlen) {
wmemmove(ret.endstr, ret.endstr + (len1 - i) + 1, i);
wmemmove(ret.endstr, ret.endstr + (len1 - i) + 1, i);
+ }
}
free(sinf.endstr);
} else {
}
free(sinf.endstr);
} else {
@@
-1082,9
+1085,7
@@
static int srisvalid(struct srchres *sr, struct sexpr *sexpr)
free(buf);
return(!ret);
case SOP_LINKRE:
free(buf);
return(!ret);
case SOP_LINKRE:
- p = sr->filename;
- if(sr->fnet->filebasename != NULL)
- p = sr->fnet->filebasename(p);
+ p = fnfilebasename(sr->filename);
if((buf = icwcstombs(p, "UTF-8")) == NULL)
return(0);
ret = regexec(&sexpr->d.re.cre, buf, 0, NULL, 0);
if((buf = icwcstombs(p, "UTF-8")) == NULL)
return(0);
ret = regexec(&sexpr->d.re.cre, buf, 0, NULL, 0);
@@
-1093,9
+1094,7
@@
static int srisvalid(struct srchres *sr, struct sexpr *sexpr)
case SOP_NAMESS:
return(wcsexists(sr->filename, sexpr->d.s));
case SOP_LINKSS:
case SOP_NAMESS:
return(wcsexists(sr->filename, sexpr->d.s));
case SOP_LINKSS:
- p = sr->filename;
- if(sr->fnet->filebasename != NULL)
- p = sr->fnet->filebasename(p);
+ p = fnfilebasename(sr->filename);
return(wcsexists(p, sexpr->d.s));
case SOP_SIZELT:
return(sr->size < sexpr->d.n);
return(wcsexists(p, sexpr->d.s));
case SOP_SIZELT:
return(sr->size < sexpr->d.n);