Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(91)

Side by Side Diff: src/common/android/include/link.h

Issue 2156173002: Don't define |r_debug| and |link_map| on Android releases 21 and later Base URL: https://chromium.googlesource.com/breakpad/breakpad.git@master
Patch Set: Don't redefine |r_debug| and |link_map| on Android releases 21 and later Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, Google Inc. 1 // Copyright (c) 2012, Google Inc.
2 // All rights reserved. 2 // All rights reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are 5 // modification, are permitted provided that the following conditions are
6 // met: 6 // met:
7 // 7 //
8 // * Redistributions of source code must retain the above copyright 8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer. 9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above 10 // * Redistributions in binary form must reproduce the above
(...skipping 12 matching lines...) Expand all
23 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 29
30 #ifndef GOOGLE_BREAKPAD_ANDROID_INCLUDE_LINK_H 30 #ifndef GOOGLE_BREAKPAD_ANDROID_INCLUDE_LINK_H
31 #define GOOGLE_BREAKPAD_ANDROID_INCLUDE_LINK_H 31 #define GOOGLE_BREAKPAD_ANDROID_INCLUDE_LINK_H
32 32
33 /* Android doesn't provide all the data-structures required in its <link.h>. 33 // TODO(rmcilroy): Remove this file once the ndk is updated for other
34 Provide custom version here. */ 34 // architectures - crbug.com/358831
35
36 // Android doesn't provide all the data-structures required in
37 // its <link.h> before release 21. Provide custom version here and
38 // rename Bionic-provided structures to avoid conflicts.
39
40 #if !defined(__aarch64__) && !defined(__x86_64__) && \
41 !(defined(__mips__) && _MIPS_SIM == _ABI64)
42
43 #define r_debug __bionic_r_debug
44 #define link_map __bionic_link_map
45
46 #endif // !defined(__aarch64__) && !defined(__x86_64__)
rmcilroy 2016/07/28 15:07:51 Please update comment with Mips (and below)
47
35 #include_next <link.h> 48 #include_next <link.h>
36 49
37 // TODO(rmcilroy): Remove this file once the ndk is updated for other
38 // architectures - crbug.com/358831
39 #if !defined(__aarch64__) && !defined(__x86_64__) && \ 50 #if !defined(__aarch64__) && !defined(__x86_64__) && \
40 !(defined(__mips__) && _MIPS_SIM == _ABI64) 51 !(defined(__mips__) && _MIPS_SIM == _ABI64)
41 52
53 #undef r_debug
54 #undef link_map
55
42 #ifdef __cplusplus 56 #ifdef __cplusplus
43 extern "C" { 57 extern "C" {
44 #endif // __cplusplus 58 #endif // __cplusplus
45 59
46 struct r_debug { 60 struct r_debug {
47 int r_version; 61 int r_version;
48 struct link_map* r_map; 62 struct link_map* r_map;
49 ElfW(Addr) r_brk; 63 ElfW(Addr) r_brk;
50 enum { 64 enum {
51 RT_CONSISTENT, 65 RT_CONSISTENT,
(...skipping 10 matching lines...) Expand all
62 struct link_map* l_prev; 76 struct link_map* l_prev;
63 }; 77 };
64 78
65 #ifdef __cplusplus 79 #ifdef __cplusplus
66 } // extern "C" 80 } // extern "C"
67 #endif // __cplusplus 81 #endif // __cplusplus
68 82
69 #endif // !defined(__aarch64__) && !defined(__x86_64__) 83 #endif // !defined(__aarch64__) && !defined(__x86_64__)
70 84
71 #endif /* GOOGLE_BREAKPAD_ANDROID_INCLUDE_LINK_H */ 85 #endif /* GOOGLE_BREAKPAD_ANDROID_INCLUDE_LINK_H */
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698