aboutsummaryrefslogtreecommitdiffstats
path: root/search.c
diff options
context:
space:
mode:
authorokan2014-01-20 18:58:03 +0000
committerokan2014-01-20 18:58:03 +0000
commit749175e23624a43a35824edada4545a6115dd4d1 (patch)
tree36997c1c39ae9c0e0881ff9083394c29aa3a3e12 /search.c
parent7c3d7c7e009aba5952f235258aecebf4a42fcd3a (diff)
downloadcwm-749175e23624a43a35824edada4545a6115dd4d1.tar.gz
Add a function that adds an entry to a menuq, normalizing a common code
path; from Tiago Cunha.
Diffstat (limited to 'search.c')
-rw-r--r--search.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/search.c b/search.c
index b9c4130..9a49b13 100644
--- a/search.c
+++ b/search.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: search.c,v 1.35 2014/01/03 15:29:06 okan Exp $
+ * $OpenBSD: search.c,v 1.36 2014/01/20 18:58:03 okan Exp $
*/
#include <sys/param.h>
@@ -172,10 +172,9 @@ search_print_client(struct menu *mi, int list)
static void
search_match_path(struct menu_q *menuq, struct menu_q *resultq, char *search, int flag)
{
- struct menu *mi;
- char pattern[MAXPATHLEN];
- glob_t g;
- int i;
+ char pattern[MAXPATHLEN];
+ glob_t g;
+ int i;
TAILQ_INIT(resultq);
@@ -187,9 +186,7 @@ search_match_path(struct menu_q *menuq, struct menu_q *resultq, char *search, in
for (i = 0; i < g.gl_pathc; i++) {
if ((flag & PATH_EXEC) && access(g.gl_pathv[i], X_OK))
continue;
- mi = xcalloc(1, sizeof(*mi));
- (void)strlcpy(mi->text, g.gl_pathv[i], sizeof(mi->text));
- TAILQ_INSERT_TAIL(resultq, mi, resultentry);
+ menuq_add(resultq, NULL, "%s", g.gl_pathv[i]);
}
globfree(&g);
}