Mercurial > hg > toybox
annotate lib/xregcomp.c @ 115:19b5567f0a1b
Add readlink, xreadlink(), and change xrealloc() to not fight the stupid
compiler so much.
author | Rob Landley <rob@landley.net> |
---|---|
date | Sun, 29 Apr 2007 19:55:21 -0400 |
parents | ce6956dfc0cf |
children | 86e2bdb2ad66 |
rev | line source |
---|---|
114
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
1 /* vi: set ts=4: |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
2 * Call regcomp() and handle errors. |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
3 * |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
4 * Copyright 2007 Rob Landley <rob@landley.net> |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
5 * |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
6 * This is a separate file so environments that haven't got regular expression |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
7 * support can configure this out and avoid a build break. |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
8 */ |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
9 |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
10 #include "toys.h" |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
11 #include "xregcomp.h" |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
12 |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
13 void xregcomp(regex_t *preg, char *rexec, int cflags) |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
14 { |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
15 int rc = regcomp(preg, rexec, cflags); |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
16 |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
17 if (rc) { |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
18 char msg[256]; |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
19 regerror(rc, preg, msg, 255); |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
20 msg[255]=0; |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
21 error_exit("xregcomp: %s", msg); |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
22 } |
ce6956dfc0cf
Add sync and an incomplete version of mdev.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
23 } |