diff options
author | Szymon Janc <szymon.janc@tieto.com> | 2013-07-31 10:51:39 +0200 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2013-08-01 10:53:16 +0300 |
commit | a79f22a45a65aa4203483e870f69e5a287ac66ec (patch) | |
tree | cc420d0d933e1883187982743bce367be14161ab /monitor/sdp.c | |
parent | fd9dddbfe6c2d7f3728c096ca961742f2e55dcbd (diff) | |
download | bluez-a79f22a45a65aa4203483e870f69e5a287ac66ec.tar.gz |
monitor: Opencode strndupa in print_string
Strndupa is GNU extension. print_string is simple and opencoding
strndupa is not a big loss.
This fix linkage error with bionic library which doesn't provide
strndupa.
target Executable: btmon (out/target/product/grouper/obj/EXECUTABLES/
btmon_intermediates/LINKED/btmon)
prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/
arm-linux-androideabi/4.6.x-google/../../../../
arm-linux-androideabi/bin/ld: out/target/product/grouper/obj/
EXECUTABLES/btmon_intermediates/monitor/sdp.o: in function
print_string:external/bluetooth/bluez/monitor/sdp.c:146: error:
undefined reference to 'strndupa'
collect2: ld returned 1 exit status
make: *** [out/target/product/grouper/obj/EXECUTABLES/
btmon_intermediates/LINKED/btmon] Error
Diffstat (limited to 'monitor/sdp.c')
-rw-r--r-- | monitor/sdp.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/monitor/sdp.c b/monitor/sdp.c index 45ee59bbb..4eb398b88 100644 --- a/monitor/sdp.c +++ b/monitor/sdp.c @@ -143,7 +143,11 @@ static void print_uuid(uint8_t indent, const uint8_t *data, uint32_t size) static void print_string(uint8_t indent, const uint8_t *data, uint32_t size) { - char *str = strndupa((const char *) data, size); + char *str = alloca(size + 1); + + str[size] = '\0'; + strncpy(str, (const char *) data, size); + print_field("%*c%s [len %d]", indent, ' ', str, size); } |