[Feature][task-view-998]merge P56U10 version
Only Configure: No
Affected branch: master
Affected module: unknow
Is it affected on both ZXIC and MTK: only ZXIC
Self-test: Yes
Doc Update: No
Change-Id: Id05b15148bef69d7b4642d18cc40564e5ef0c9a0
diff --git a/ap/libc/glibc/glibc-2.23/bits/typesizes.h b/ap/libc/glibc/glibc-2.23/bits/typesizes.h
index a8c4904..53047b8 100755
--- a/ap/libc/glibc/glibc-2.23/bits/typesizes.h
+++ b/ap/libc/glibc/glibc-2.23/bits/typesizes.h
@@ -47,7 +47,7 @@
#define __FSWORD_T_TYPE __SWORD_TYPE
#define __ID_T_TYPE __U32_TYPE
#define __CLOCK_T_TYPE __SLONGWORD_TYPE
-#define __TIME_T_TYPE __ULONGWORD_TYPE
+#define __TIME_T_TYPE __SLONGWORD_TYPE
#define __USECONDS_T_TYPE __U32_TYPE
#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
#define __DADDR_T_TYPE __S32_TYPE
diff --git a/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/adjtime.c b/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/adjtime.c
index d37cfa1..555d82f 100755
--- a/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/adjtime.c
+++ b/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/adjtime.c
@@ -58,11 +58,11 @@
struct TIMEVAL tmp;
/* We will do some check here. */
- tmp.tv_sec = (signed long)itv->tv_sec + itv->tv_usec / 1000000L;
+ tmp.tv_sec = itv->tv_sec + itv->tv_usec / 1000000L;
tmp.tv_usec = itv->tv_usec % 1000000L;
- if ((signed long)tmp.tv_sec > (signed long)MAX_SEC || (signed long)tmp.tv_sec < (signed long)MIN_SEC)
+ if (tmp.tv_sec > MAX_SEC || tmp.tv_sec < MIN_SEC)
return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
- tntx.offset = tmp.tv_usec + (signed long)tmp.tv_sec * 1000000L;
+ tntx.offset = tmp.tv_usec + tmp.tv_sec * 1000000L;
tntx.modes = ADJ_OFFSET_SINGLESHOT;
}
else
diff --git a/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/generic/bits/typesizes.h b/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/generic/bits/typesizes.h
index 9b7265f..c31bba2 100755
--- a/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/generic/bits/typesizes.h
+++ b/ap/libc/glibc/glibc-2.23/sysdeps/unix/sysv/linux/generic/bits/typesizes.h
@@ -48,7 +48,7 @@
#define __FSWORD_T_TYPE __SWORD_TYPE
#define __ID_T_TYPE __U32_TYPE
#define __CLOCK_T_TYPE __SLONGWORD_TYPE
-#define __TIME_T_TYPE __ULONGWORD_TYPE
+#define __TIME_T_TYPE __SLONGWORD_TYPE
#define __USECONDS_T_TYPE __U32_TYPE
#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
#define __DADDR_T_TYPE __S32_TYPE
diff --git a/ap/libc/glibc/glibc-2.23/time/offtime.c b/ap/libc/glibc/glibc-2.23/time/offtime.c
index 42ef7d5..b540b2f 100644
--- a/ap/libc/glibc/glibc-2.23/time/offtime.c
+++ b/ap/libc/glibc/glibc-2.23/time/offtime.c
@@ -28,7 +28,7 @@
int
__offtime (const time_t *t, long int offset, struct tm *tp)
{
- long long days, rem, y;
+ time_t days, rem, y;
const unsigned short int *ip;
days = *t / SECS_PER_DAY;
@@ -60,7 +60,7 @@
while (days < 0 || days >= (__isleap (y) ? 366 : 365))
{
/* Guess a corrected year, assuming 365 days per year. */
- long long yg = y + days / 365 - (days % 365 < 0);
+ time_t yg = y + days / 365 - (days % 365 < 0);
/* Adjust DAYS and Y to match the guessed year. */
days -= ((yg - y) * 365
diff --git a/ap/libc/glibc/glibc-2.23/time/tzfile.c b/ap/libc/glibc/glibc-2.23/time/tzfile.c
index d38e5a3..9049878 100755
--- a/ap/libc/glibc/glibc-2.23/time/tzfile.c
+++ b/ap/libc/glibc/glibc-2.23/time/tzfile.c
@@ -648,7 +648,7 @@
__tzname[0] = NULL;
__tzname[1] = NULL;
- if (__glibc_unlikely (num_transitions == 0))
+ if (__glibc_unlikely (num_transitions == 0 || timer < transitions[0]))
{
/* TIMER is before any transition (or there are no transitions).
Choose the first non-DST type