Reorder DIR structure due to bad apps.
It turns out that apportable apps expect that the DIR structure is the same as in L and below. Modify the structure to have the same order, and move the new variable to the end of the structure. Bug: 21037208 (cherry picked from commit 5edb0f40f654c804d38f1bff43f91719e189c892) Change-Id: I0c1ab5e295ec8bef638daa4cfea5830aeea602e6
This commit is contained in:
parent
5cce2e7205
commit
c062218a9b
@ -41,13 +41,19 @@
|
||||
|
||||
extern "C" int __getdents64(unsigned int, dirent*, unsigned int);
|
||||
|
||||
// Apportable decided to copy the data structure from this file
|
||||
// and use it in their own code, but they also call into readdir.
|
||||
// In order to avoid a lockup, the structure must be maintained in
|
||||
// the exact same order as in L and below. New structure members
|
||||
// need to be added to the end of this structure.
|
||||
// See b/21037208 for more details.
|
||||
struct DIR {
|
||||
int fd_;
|
||||
size_t available_bytes_;
|
||||
dirent* next_;
|
||||
long current_pos_;
|
||||
pthread_mutex_t mutex_;
|
||||
dirent buff_[15];
|
||||
long current_pos_;
|
||||
};
|
||||
|
||||
static DIR* __allocate_DIR(int fd) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user