diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-11 16:22:43 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-11 16:22:43 -0400 |
commit | 4f0ac854167846bd55cd81dbc9a36e03708aa01c (patch) | |
tree | 0eb34d18a667f8e68ad9255f791560b028fed2a6 /tools/perf/util/config.c | |
parent | b9356c53ba2f593081e5aa45eb67adcce243d1c0 (diff) | |
parent | 6b58e7f146f8d79c08f62087f928e1f01747de71 (diff) |
Merge branch 'perfcounters-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'perfcounters-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (60 commits)
perf tools: Avoid unnecessary work in directory lookups
perf stat: Clean up statistics calculations a bit more
perf stat: More advanced variance computation
perf stat: Use stddev_mean in stead of stddev
perf stat: Remove the limit on repeat
perf stat: Change noise calculation to use stddev
x86, perf_counter, bts: Do not allow kernel BTS tracing for now
x86, perf_counter, bts: Correct pointer-to-u64 casts
x86, perf_counter, bts: Fail if BTS is not available
perf_counter: Fix output-sharing error path
perf trace: Fix read_string()
perf trace: Print out in nanoseconds
perf tools: Seek to the end of the header area
perf trace: Fix parsing of perf.data
perf trace: Sample timestamps as well
perf_counter: Introduce new (non-)paranoia level to allow raw tracepoint access
perf trace: Sample the CPU too
perf tools: Work around strict aliasing related warnings
perf tools: Clean up warnings list in the Makefile
perf tools: Complete support for dynamic strings
...
Diffstat (limited to 'tools/perf/util/config.c')
-rw-r--r-- | tools/perf/util/config.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/tools/perf/util/config.c b/tools/perf/util/config.c index 780df541006d..8784649109ce 100644 --- a/tools/perf/util/config.c +++ b/tools/perf/util/config.c | |||
@@ -160,17 +160,18 @@ static int get_extended_base_var(char *name, int baselen, int c) | |||
160 | name[baselen++] = '.'; | 160 | name[baselen++] = '.'; |
161 | 161 | ||
162 | for (;;) { | 162 | for (;;) { |
163 | int c = get_next_char(); | 163 | int ch = get_next_char(); |
164 | if (c == '\n') | 164 | |
165 | if (ch == '\n') | ||
165 | return -1; | 166 | return -1; |
166 | if (c == '"') | 167 | if (ch == '"') |
167 | break; | 168 | break; |
168 | if (c == '\\') { | 169 | if (ch == '\\') { |
169 | c = get_next_char(); | 170 | ch = get_next_char(); |
170 | if (c == '\n') | 171 | if (ch == '\n') |
171 | return -1; | 172 | return -1; |
172 | } | 173 | } |
173 | name[baselen++] = c; | 174 | name[baselen++] = ch; |
174 | if (baselen > MAXNAME / 2) | 175 | if (baselen > MAXNAME / 2) |
175 | return -1; | 176 | return -1; |
176 | } | 177 | } |
@@ -530,6 +531,8 @@ static int store_aux(const char* key, const char* value, void *cb __used) | |||
530 | store.offset[store.seen] = ftell(config_file); | 531 | store.offset[store.seen] = ftell(config_file); |
531 | } | 532 | } |
532 | } | 533 | } |
534 | default: | ||
535 | break; | ||
533 | } | 536 | } |
534 | return 0; | 537 | return 0; |
535 | } | 538 | } |
@@ -619,6 +622,7 @@ contline: | |||
619 | switch (contents[offset]) { | 622 | switch (contents[offset]) { |
620 | case '=': equal_offset = offset; break; | 623 | case '=': equal_offset = offset; break; |
621 | case ']': bracket_offset = offset; break; | 624 | case ']': bracket_offset = offset; break; |
625 | default: break; | ||
622 | } | 626 | } |
623 | if (offset > 0 && contents[offset-1] == '\\') { | 627 | if (offset > 0 && contents[offset-1] == '\\') { |
624 | offset_ = offset; | 628 | offset_ = offset; |
@@ -742,9 +746,9 @@ int perf_config_set_multivar(const char* key, const char* value, | |||
742 | goto write_err_out; | 746 | goto write_err_out; |
743 | } else { | 747 | } else { |
744 | struct stat st; | 748 | struct stat st; |
745 | char* contents; | 749 | char *contents; |
746 | ssize_t contents_sz, copy_begin, copy_end; | 750 | ssize_t contents_sz, copy_begin, copy_end; |
747 | int i, new_line = 0; | 751 | int new_line = 0; |
748 | 752 | ||
749 | if (value_regex == NULL) | 753 | if (value_regex == NULL) |
750 | store.value_regex = NULL; | 754 | store.value_regex = NULL; |