Changeset 6249 for trunk/Ohana/src/opihi/cmd.data/queuepop.c
- Timestamp:
- Jan 29, 2006, 9:36:21 AM (20 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/opihi/cmd.data/queuepop.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/opihi/cmd.data/queuepop.c
r4703 r6249 3 3 int queuepop (int argc, char **argv) { 4 4 5 int N ;5 int N, Key; 6 6 char *var; 7 7 char *line; 8 char *Value; 8 9 Queue *queue; 9 10 … … 15 16 } 16 17 18 Key = -1; 19 if ((N = get_argument (argc, argv, "-key"))) { 20 remove_argument (N, &argc, argv); 21 Key = atoi (argv[N]); 22 remove_argument (N, &argc, argv); 23 Value = strcreate (argv[N]); 24 remove_argument (N, &argc, argv); 25 } 26 27 17 28 if (argc != 2) { 18 fprintf (stderr, "USAGE: queuepop (queue) [-var variable] \n");29 fprintf (stderr, "USAGE: queuepop (queue) [-var variable] [-key N value]\n"); 19 30 return (FALSE); 20 31 } … … 27 38 } 28 39 29 line = PopQueue (queue);30 if (line == NULL) {31 fprintf (stderr, "ERROR: queue %s is empty\n", argv[1]);32 return (FALSE);40 if (Key == -1) { 41 line = PopQueue (queue); 42 } else { 43 line = PopQueueMatch (queue, Key, Value); 33 44 } 34 45 35 if (var == (char *) NULL) { 36 fprintf (stderr, "%s\n", line); 46 if (var == NULL) { 47 if (line == NULL) { 48 fprintf (stderr, "queue %s is empty or match not found\n", argv[1]); 49 return (FALSE); 50 } else { 51 fprintf (stderr, "%s\n", line); 52 return (TRUE); 53 } 54 } 55 56 if (line == NULL) { 57 set_str_variable (var, "NULL"); 37 58 } else { 38 set_str_variable ( argv[2], line);59 set_str_variable (var, line); 39 60 } 40 61
Note:
See TracChangeset
for help on using the changeset viewer.
