Commit Graph

78402 Commits

Author SHA1 Message Date
Tom Taylor
bfb7ffeb3e Externally Reported Moderate Security Issue: SQL Injection in WAPPushManager
Bug 17969135

Use query (instead of rawQuery) and pass in arguments instead of building
the query with a giant string. Add a unit test that fails with the old
code but passes with the new code.

Change-Id: Id04a1db6fb95fcd923e1f36f5ab3b94402590918
2014-10-15 09:45:39 -07:00
Deepanshu Gupta
27d3b9264e Fix error when using list as actionBarNavMode. [DO NOT MERGE]
A bug in the framework leads to the wrong argument being passed to
defStyleRes when obtaining styled attributes. The framework however just
ignores the attribute in such a case. LayoutLib logs an error to help
developers find bugs in their code.

The bug was seen when using list as the actionBarNavMode.

This change ignores the attribute if it detects that it's the framework
bug. Also, we change the error to a warning.

Change-Id: I58e1fe4469de0329a27b577d75c0a59c48d0381b
2014-09-25 22:59:58 +00:00
Deepanshu Gupta
d181ffe688 Merge "Resolve color xml attributes properly. [DO NOT MERGE]" into jb-dev 2014-09-04 01:54:08 +00:00
Deepanshu Gupta
6530cca1ed Fix "@null" resource values in LayoutLib. [DO NOT MERGE]
Bug: http://b.android.com/74072
Change-Id: Ib84906d86772ac3df2407e71ad2167797bec4542
(cherry picked from commit c9cd725f1013bed27e6f6594b176c10a6a4c0f16)
2014-08-26 00:51:54 +00:00
Deepanshu Gupta
f2e26413fb Resolve color xml attributes properly. [DO NOT MERGE]
Color attributes were not being converted to int properly. The
conversion to int was a simple string to int using base 16. This change
resolves the colors as per #RGB, #ARGB, #RRGGBB or #AARRGGBB format
depending on the length of the attribute. All values that begin with '#'
are treated as colors.

Bug: http://b.android.com/73845
Change-Id: I8ad089b821af1e290b9b95771b50213fe2fdd784
(cherry picked from commit 81564dfe60020fa977d39d168f682e9d61825660)
2014-08-26 00:28:18 +00:00
Deepanshu Gupta
505c675c3a Fix SystemProperties in LayoutLib.
Not all System Properties were used via Build class. Also, properties
like SDK_INT which called SystemProperties directly were not initialized
properly.

This change is essentially cherry picking of the relevant parts from the
following commits:
984749bf75c9ce9d3401b8410ea7d6276544b6ee
167bc25bceea9280bbe4858db4cb8233f86ce325

Bug: http://b.android.com/73046
Change-Id: Ia0fb467ee6d5fdedda500d57d02be20006f115df
2014-08-05 17:47:30 -07:00
Deepanshu Gupta
5af7324ace Fix style resolution for styles with '.' [DO NOT MERGE]
Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
(cherry picked from commit f2fa79e9b5)
2014-07-10 00:30:03 +00:00
Deepanshu Gupta
3ff08eb6bf Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
(cherry picked from commit 03c0735017)
2014-05-30 14:50:55 -07:00
Deepanshu Gupta
3b7c09b433 LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
(cherry picked from commit 08d2007b33)
2014-05-30 14:50:39 -07:00
Deepanshu Gupta
3a11562823 Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
Return the right value for presence of software navigation bar in
BridgeWindowManager. This is required to render the overflow menu button
correctly in the Action Bar.

Change-Id: I73de3b299f6a3a113425c436a59e800cd1d6b97f
2014-05-07 18:09:48 -07:00
Deepanshu Gupta
2d3fa7ba78 Support actionProviderClass attribute for menus [DO NOT MERGE]
The change adds support for view cookies for actionProviderClasses (for
example, ShareActionProvider) in the action bar menus.

This also provides a more robust search for the overflowMenuButton.

Change-Id: I316c8b9a69e2e337b41ba0fe4e61af9fe850f750
(cherry picked from commit 099f40a950)
2014-05-07 18:09:48 -07:00
Deepanshu Gupta
7bc363ba72 Add special system view cookie to OverflowButton. [DO NOT MERGE]
Add a special view cookie to enable the IDE to identify the overflow
menu button in the Action Bar.

Change-Id: Ida3ed776afb8c9fa8af23b73d4cf6d47eef0ab87
(cherry picked from commit 7c6f6481f4)
2014-05-07 18:09:47 -07:00
Deepanshu Gupta
5268248e07 Use ApplicationInfo only when not in edit mode [DO NOT MERGE]
When running in edit mode, do not use the application info to get the
icon, since it will be null.

Change-Id: I174e6126ddca341d06c5f04939470ef52f0e771c
(cherry picked from commit 90ce58ecfd)
2014-05-07 18:09:47 -07:00
Deepanshu Gupta
85f53c3335 Fix style warnings in RenderSessionImpl [DO NOT MERGE]
Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
(cherry-picked from commit 22de7c4c3d)
2014-05-07 18:09:46 -07:00
Deepanshu Gupta
0f209967bf Add view cookies for action bar menus. [DO NOT MERGE]
The change adds the view cookies for the menus rendered in the action
bar. This enables the IDE to map the menu to the relevant XML Tag in the
menu xml and show the highlighting accordingly.

The change also contains a bugfix where a method wasn't renamed
properly.

Change-Id: Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
(cherry-picked from commit 094fd8ecb6)
2014-05-07 18:09:46 -07:00
Deepanshu Gupta
26c3732135 Add missing layout params to xlarge action bar. [DO NOT MERGE]
layout_width and layout_height params were missing from the x-large
version of the action bar layout file.

Change-Id: Icef5575ae3d4ce9db6a966b7fa2be1921b9e860e
2014-05-07 18:09:46 -07:00
Deepanshu Gupta
f7e5794990 Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
In addition to the cherrypicked changes, appropriate changes due to
changes to com.android.internal.widget.ActionBarView are made.

The icon used in the Action Bar may not always be the right one due to
the above resolution.

Change-Id: Ib7cc314079099c010f7d53849e204db36c410357
(cherry-picked from commit 56759be896)
2014-05-07 18:09:39 -07:00
Deepanshu Gupta
43b15371f9 Action bar rendering in layoutlib [DO NOT MERGE]
This also makes a couple of changes to the framework:
1. ShareActionProvider - Use edit mode to execute activity chooser code.
2. ActionBarImpl - add a new constructor for use by layoutlib.

This also relies on some changes to the plugin to pass the correct params.

Change-Id: Ia30fef816afd91ec1e439734d56b59b1323bfee2
(cherry-picked from fe38489f67)
2014-05-06 14:02:48 -07:00
Deepanshu Gupta
770e40f839 Fix theme/style resolution in Layoutlib [DO NOT MERGE]
Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit 76dccb7f43)
2014-05-06 14:02:47 -07:00
Deepanshu Gupta
8766538846 Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
The bug caused some classes to be missed when computing the dependencies
of the existing classes.

This change includes the new mock_android.jar compiled from the mock
sources again.

Change-Id: I7285ff67e016ce5d73a8550501f49acc73cfadfa
(cherry-picked from 6136af326e)
2014-05-06 14:02:47 -07:00
Deepanshu Gupta
d915dcac36 Layoutlib tests now check methods return value [DO NOT MERGE]
The change is a cherry-pick from klp-dev.

The change also fixes the errors found by fixing the tests.

Change-Id: I87cef323c4eaee4e9f60475f01156b276593fa50
(cherry-picked from commit 2bd65db15f)
2014-05-06 14:02:47 -07:00
Deepanshu Gupta
877ae53586 Set default text style in layoutlib as NORMAL [DO NOT MERGE]
If a style doesn't specify text style (normal/bold/italic/bold-italic)
then default to normal instead of throwing an error.

Bug: http://b.android.com/61358
Change-Id: I0138c73807a5ff6e4d938a99ece3044333110aa1
(cherry-picked from bcbeaf83ca)
2014-05-06 14:02:46 -07:00
Deepanshu Gupta
669792b303 Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
For these font families, text was always rendered as italic. This
changeset fixes the issue.

Bug: http://b.android.com/57221
Change-Id: Ic8a299bd1e555f5bb914cd3d2fe72917ec7f471a
(cherry-picked from 5be65fda15)
2014-05-06 14:02:46 -07:00
Deepanshu Gupta
cda89ca025 Fix a bug in Nine Patch library. [DO NOT MERGE]
The nine patches were not drawn correctly if they were not positioned at
the top left corner of the canvas.

Bug: http://b.android.com/29959
Change-Id: Icfed522ea07322a3ee9f3955067d3da26c4b0b5b
(cherry-picked from 5bb3414d14)
2014-05-06 14:02:46 -07:00
Deepanshu Gupta
a2b34c96f1 Optimize layout rendering in layoutlib [DO NOT MERGE]
The height of a layout should be zero if it is assigned a layout_weight.
This way, the layout is measured only once and prevents spurious errors.

Bug: https://code.google.com/p/android/issues/detail?id=58398
Change-Id: If49a7480e5eb82cb86780e00f2f5b65ee053fc2a
(cherry-picked from 5712b5fc3f)
2014-05-06 14:02:45 -07:00
Deepanshu Gupta
e183855c1e Add methods for Time_Delegate [DO NOT MERGE]
Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
(cherry-picked from 02cde9ceeb)
2014-05-06 14:02:45 -07:00
Deepanshu Gupta
e5a2347bc6 Fix NPE in layoutlib. [DO NOT MERGE]
Change-Id: I36623304d83b344ea078044001577b8005a63c02
(cherry picked from commit 689c0dfe72)
2014-05-06 14:02:45 -07:00
Deepanshu Gupta
30505abeb6 Fix text size in Fake Action Bar. [DO NOT MERGE]
The density multiplier was being applied twice to the title text in
the fake action bar.

Bug: 11436018
Change-Id: Id74c11037cb43d01f6cd79126623c84edfc37aaf
(cherry-picked from 083d1562e0)
2014-05-06 14:02:44 -07:00
Deepanshu Gupta
5a7b3b65b6 Remove references to non-std Java classes. [DO NOT MERGE]
Do not add the non-standard Java classes. Updates the references to all
non-standard classes to new classes in
com.android.tools.layoulib.create package. This also treats
java.lang.AutoCloseable which is part of Java 7 similarly so that we can
still run on Java 6.

This also adapts the cherrypick for this branch by updating references
to the non-standard Java classes present in this branch. This also
includes the following change that includes some changes that the
original cherrypick missed.
Change-Id: I76c87c74ee088778b37d1a7a7d531e0fde5c758f
commit: 1ed75bde09

Change-Id: Iac5b272652e2780c9bb72d19f415d150948ca589
(cherry picked from 80c668f2a0)
2014-05-06 13:55:56 -07:00
Deepanshu Gupta
4b5da86d04 Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]
Issue: https://code.google.com/p/android/issues/detail?id=59732

Change-Id: I281b3fdad88c591281a3645592c84f3e2cb61d09
(cherry picked from commit 6335590aa8)
2014-05-05 18:42:28 -07:00
Deepanshu Gupta
5c166c9c04 Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]
Issue: https://code.google.com/p/android/issues/detail?id=60993

Change-Id: Ia43ed40b42c79f67dcd5809b827d4fecbc823c25
(cherry picked from commit 11ee746dc5)
2014-05-05 18:33:08 -07:00
Deepanshu Gupta
2d82586b96 Fix CalendarView to show the right labels. [DO NOT MERGE]
Change-Id: I95431f1054678d4192bd1621c1f69b29268f55e9
(cherry picked from commit 44bcd64e5b)
2014-05-05 18:32:04 -07:00
Deepanshu Gupta
64dc038012 Fix layoutlib [DO NOT MERGE]
Fix a NPE.

The cherry-pick differs slightly from the original to remove changes not
relevant to the current branch.

Bug: 11140701
Change-Id: Id92fc5359acf6dde1bcdbc781aaf637fdb6eecbf
(cherry-picked from 87be67f917)
2014-05-05 18:23:15 -07:00
Deepanshu Gupta
a59c27dd66 Fix ClassCastException when rendering ListView [DO NOT MERGE]
Bug: b.android.com/59300
Change-Id: Ia350adb3308daa8170bff755302760790163c811
(cherry picked from commit 7b5d54f05b)
2014-05-05 18:21:41 -07:00
Deepanshu Gupta
8a39c3afb2 Add orientation to configuration for layoutlib. [DO NOT MERGE]
Update the configuration with the device orientation before rendering.

Change-Id: Icd40901204fd13f90b18353e53a15e25e5b2176c
(cherry picked from commit d4875e19f5)
2014-05-05 18:17:13 -07:00
Kenny Root
ecb013dbff Merge "Use hidden API to validate APK chains" into jb-dev 2014-04-18 17:12:40 +00:00
Kenny Root
16c6b177ee Use hidden API to validate APK chains
Bug: 13678484
Change-Id: I28dedab74b0e24d47ab9f2190298156c909e9d54
2014-04-17 14:03:33 -07:00
Robert Greenwalt
fe38ff8d36 DO NOT MERGE Sanitize WifiConfigs
Do this both on input from apps (giving error) and between wifi and
ConnectivityService (ignoring bad data).  This means removing all
addresses beyond the first and all routes but the first default and
the implied direct-connect routes.

We do this because the user can't monitor the others (no UI), their
support wasn't intended, they allow redirection of all traffic
without user knowledge and they allow circumvention of legacy VPNs.

This should not move forward from JB as it breaks IPv6 and K has
a more resilient VPN.

Bug:12663469
Change-Id: I98c0672a6d9c8d5bc4f160849aa0fa182073216b
2014-03-28 11:38:33 -07:00
Marco Nelissen
a3337bc7c3 Merge "Verify certificates" into jb-dev 2014-03-20 16:58:37 +00:00
Victoria Lease
1c12f9e762 malloc some advances
Bug: 13506939
Change-Id: I87ad616960c4f16bc55d8b906049dbd4f001d6a5
(cherry picked from commit 3af2a37e05)
2014-03-18 16:22:20 +00:00
Marco Nelissen
c936d73adb Verify certificates
b/13418320

Cherrypicked from 7e435a011d
https://googleplex-android-review.git.corp.google.com/#/c/433316/

Change-Id: I39c81b1557a16c7a4666a4531a398efa91dcb00c
2014-03-17 11:14:18 -07:00
Paul Lawrence
b9ba0c6c43 Prevent authenticators from using Settings to launch arbitrary activities.
Various authenticator results such as getAuthToken and addAccount might
result in an Intent returned to the AccountManager caller. A malicious
authenticator could exploit the fact that the Settings are a system app,
lead the user to launch add account for their account type and thus get
Settings to use the intent to start some arbitrary third parties Activity.

The fix is to make sure that the UID of the app associated with Activity
to be launched by the supplied intent and the Authenticators UID share
the same signature.  This means that an authenticator implementer can only
exploit apps they control.

This is a backport of 5bab9daf3c

Bug: 7699048
Change-Id: Ifed345c2fc20020d55fa2cab1f2f7ea509ea09b2
2014-02-27 09:09:48 -08:00
David Christie
8e0c7768c8 DO NOT MERGE: Clear cached locations when location providers disabled
Bug: 12118307

Change-Id: Iae668409be5c5bd715681624b2a54a4daa690932
2014-01-06 17:57:30 -08:00
Christopher Tate
50cbfd554f System package permission decls take precedence over 3rd party apps'
In particular, if a 3rd party app tries to define a permission that
turns out to be defined by system packages following an upgrade,
the system package gets ownership and grants are re-evaluated
on that basis.

Bug 11242510

(Cherry-pick backport to JB)

Change-Id: Iabf7b6280e6c6674a51af5624142bd19ea0750ed
2013-11-07 19:04:22 -08:00
Amith Yamasani
427864188d Don't instantiate non-Fragments in Fragment.instantiate
Backport...

Fix for PreferenceActivities being invoked with non-Fragment class
names via extras in the intent. Make sure that the constructor
doesn't get called if the class name is not for a Fragment type.
Bug: 9901133
Change-Id: I227756fb4246deac796cee09077e482237bb5b0d
2013-09-27 10:28:09 -07:00
Kenny Root
32c990044f Use hostname verifier directly instead of instance
Instead of local instance of the default HostnameVerifier, use it
directly from HttpsURLConnection. This avoids class preloading creating
an instance of it before it's necessary.

(cherry picked from commit 928ee1e48f)

Bug: 9984058
Change-Id: I56565afa0394dc98054abbaef06ac9bfff009e56
2013-08-13 14:13:08 -07:00
Christopher Tate
81c1d8d3a5 Ensure install-during-restore is like install-then-restore
When we've installed an apk from the archive, recheck whether
to apply the system-uid policy restrictions around file system
restores.

Bug 8833099

(cherry picked from commit 2baf6dcfcf)

Change-Id: I972fe1543f2234aa76baf562d6f806175ac0248e
2013-05-06 14:43:05 -07:00
Nick Kralevich
6d8f5b755b libdrm: fix bad strncpy / snprintf calls
Fix the following bugs reported by IOActive:
* GOOGLE-AN01 - Android libdrm drm_parseDM.c Boundary-CRLF Buffer Overflow
* GOOGLE-AN02 - Android libdrm 'drm_parseDM.c' contentType-CRLF Buffer Overflow
* GOOGLE-AN03 - Android libdrm drm_parseDM.c contentID-CRLF Buffer Overflow
* GOOGLE-AN04 - Android libdrm 'parser_dcf.c' Multiple Headers Buffer Overflow
* GOOGLE-AN05 - Android libdrm 'parser_dcf.c' ContentType Buffer Overflow

Bug: 8727221

(cherry picked from commit 25619b2c6b)

Change-Id: I9a99c9b8a63c8b9efb3b2b650c735467b77120f2
2013-04-29 15:31:03 -07:00
Selim Gurun
93c39d5d4f DO NOT MERGE Fix issues during backport
Fix issues related to I219accd5db0c8a0e64b8aab3b049a8cee7dc168f.

Change-Id: Iacf72a9c618d59601c373de948a3f7cbfcbd7038
2013-04-04 16:31:01 -07:00
Selim Gurun
7918cf4e6b DO NOT MERGE Add a delimiter between scheme and host
Bug: 6923539
Change-Id: I219accd5db0c8a0e64b8aab3b049a8cee7dc168f
2013-04-04 11:00:25 -07:00