(maybe I'll remove it later).
#endif
;
+#if 0
static void destroy_cmd_strs()
{
if (sed_cmds == NULL)
free(sed_cmds);
sed_cmds = NULL;
}
+#endif
/*
* trim_str - trims leading and trailing space from a string
fatalError("unterminated match expression\n");
my_str[idx] = '\0';
*regex = (regex_t *)xmalloc(sizeof(regex_t));
- if (bb_regcomp(*regex, my_str+1, REG_NEWLINE) != 0) {
- free(my_str);
- exit(1);
- }
+ xregcomp(*regex, my_str+1, REG_NEWLINE);
}
else {
fprintf(stderr, "sed.c:get_address: no address found in string\n");
/* compile the regex */
sed_cmd->sub_match = (regex_t *)xmalloc(sizeof(regex_t));
- if (bb_regcomp(sed_cmd->sub_match, match, cflags) != 0) {
- free(match);
- exit(1);
- }
+ xregcomp(sed_cmd->sub_match, match, cflags);
free(match);
}
}
if (argv[1] && (strcmp(argv[1], "--help") == 0))
usage(sed_usage);
+#if 0
/* destroy command strings on exit */
if (atexit(destroy_cmd_strs) == -1) {
perror("sed");
exit(1);
}
+#endif
/* do normal option parsing */
while ((opt = getopt(argc, argv, "Vhne:f:")) > 0) {
reflags = REG_NOSUB | REG_NEWLINE;
if (ignore_case)
reflags |= REG_ICASE;
- if (bb_regcomp(®ex, argv[optind], reflags) != 0)
- exit(1);
+ xregcomp(®ex, argv[optind], reflags);
/* argv[(optind+1)..(argc-1)] should be names of file to grep through. If
* there is more than one file to grep, we will print the filenames */
reflags = REG_NOSUB | REG_NEWLINE;
if (ignore_case)
reflags |= REG_ICASE;
- if (bb_regcomp(®ex, argv[optind], reflags) != 0)
- exit(1);
+ xregcomp(®ex, argv[optind], reflags);
/* argv[(optind+1)..(argc-1)] should be names of file to grep through. If
* there is more than one file to grep, we will print the filenames */
extern char *get_line_from_file(FILE *file);
extern char process_escape_sequence(char **ptr);
extern char *get_last_path_component(char *path);
-extern int bb_regcomp(regex_t *preg, const char *regex, int cflags);
+extern void xregcomp(regex_t *preg, const char *regex, int cflags);
extern void *xmalloc (size_t size);
extern char *xstrdup (const char *s);
#endif
;
+#if 0
static void destroy_cmd_strs()
{
if (sed_cmds == NULL)
free(sed_cmds);
sed_cmds = NULL;
}
+#endif
/*
* trim_str - trims leading and trailing space from a string
fatalError("unterminated match expression\n");
my_str[idx] = '\0';
*regex = (regex_t *)xmalloc(sizeof(regex_t));
- if (bb_regcomp(*regex, my_str+1, REG_NEWLINE) != 0) {
- free(my_str);
- exit(1);
- }
+ xregcomp(*regex, my_str+1, REG_NEWLINE);
}
else {
fprintf(stderr, "sed.c:get_address: no address found in string\n");
/* compile the regex */
sed_cmd->sub_match = (regex_t *)xmalloc(sizeof(regex_t));
- if (bb_regcomp(sed_cmd->sub_match, match, cflags) != 0) {
- free(match);
- exit(1);
- }
+ xregcomp(sed_cmd->sub_match, match, cflags);
free(match);
}
}
if (argv[1] && (strcmp(argv[1], "--help") == 0))
usage(sed_usage);
+#if 0
/* destroy command strings on exit */
if (atexit(destroy_cmd_strs) == -1) {
perror("sed");
exit(1);
}
+#endif
/* do normal option parsing */
while ((opt = getopt(argc, argv, "Vhne:f:")) > 0) {
#endif
#if defined BB_GREP || defined BB_SED
-int bb_regcomp(regex_t *preg, const char *regex, int cflags)
+void xregcomp(regex_t *preg, const char *regex, int cflags)
{
int ret;
if ((ret = regcomp(preg, regex, cflags)) != 0) {
int errmsgsz = regerror(ret, preg, NULL, 0);
char *errmsg = xmalloc(errmsgsz);
regerror(ret, preg, errmsg, errmsgsz);
- errorMsg("bb_regcomp: %s\n", errmsg);
- free(errmsg);
- regfree(preg);
+ fatalError("bb_regcomp: %s\n", errmsg);
}
- return ret;
}
#endif