summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * GenericSource: reset mDecryptHandle when mDataSource is cleared. am: ↵Wei Jia2015-10-221-0/+1
| |\ | | | | | | | | | | | | | | | | | | | | | | | | 09c291c838 am: 313358c747 am: 92b6cd8da9 am: 7b5564e251 am: 000321c7ee * commit '000321c7ee8c2a0e489d41b9a5f8bad93bdd89b2': GenericSource: reset mDecryptHandle when mDataSource is cleared.
| | * GenericSource: reset mDecryptHandle when mDataSource is cleared. am: ↵Wei Jia2015-10-221-0/+1
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 09c291c838 am: 313358c747 am: 92b6cd8da9 am: 7b5564e251 * commit '7b5564e251680275d810b5c34b5d9a3caebff0fb': GenericSource: reset mDecryptHandle when mDataSource is cleared.
| | | * GenericSource: reset mDecryptHandle when mDataSource is cleared. am: ↵Wei Jia2015-10-221-0/+1
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 09c291c838 am: 313358c747 am: 92b6cd8da9 * commit '92b6cd8da9052e17710945604cd45098ebfb25e0': GenericSource: reset mDecryptHandle when mDataSource is cleared.
| | | | * GenericSource: reset mDecryptHandle when mDataSource is cleared. am: 09c291c838Wei Jia2015-10-221-0/+1
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 313358c747 * commit '313358c747b54bbdcbff97636546e0304f6f4947': GenericSource: reset mDecryptHandle when mDataSource is cleared.
| | | | | * GenericSource: reset mDecryptHandle when mDataSource is cleared.Wei Jia2015-10-221-0/+1
| | | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 09c291c838 * commit '09c291c838bc74bb7c10c22f7232abb946cad8ff': GenericSource: reset mDecryptHandle when mDataSource is cleared.
| | | | | | * GenericSource: reset mDecryptHandle when mDataSource is cleared.Wei Jia2015-10-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25070434 Change-Id: Ib0eb6a419683a0e686a4f63b82e9300cb1f69484 (cherry picked from commit cdc9cf656a8e43875234cb021fffeb4792d7c74e)
* | | | | | | Merge "Workaround for busy wait bug" into mnc-dr-devGlenn Kasten2015-10-221-1/+2
|\ \ \ \ \ \ \
| * | | | | | | Workaround for busy wait bugGlenn Kasten2015-10-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Underlying bug 25195759 is not yet fixed. Bug: 24263351 Change-Id: I04b644246640054d38c8de79e0eb80fcbfef0e48
* | | | | | | | Merge "Allow ALooper::awaitResponse to return immediately if the looper is ↵Ronghua Wu2015-10-222-3/+30
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | stopped." into mnc-dr-dev
| * | | | | | | | Allow ALooper::awaitResponse to return immediately if the looper is stopped.Ronghua Wu2015-10-222-3/+30
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25088488 Change-Id: I63e69886a8e9cffcaad675ca1a5642c0abf3b466
* | | | | | | | Merge "GenericSource: reset mDecryptHandle when mDataSource is cleared." ↵Wei Jia2015-10-221-0/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | into mnc-dr-dev
| * | | | | | | | GenericSource: reset mDecryptHandle when mDataSource is cleared.Wei Jia2015-10-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25070434 Change-Id: Ib0eb6a419683a0e686a4f63b82e9300cb1f69484
* | | | | | | | | Merge "Fix offset adjustment when skipping off-spec meta chunk" into mnc-dr-devMarco Nelissen2015-10-221-3/+3
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | |
| * | | | | | | | Fix offset adjustment when skipping off-spec meta chunkMarco Nelissen2015-10-221-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25172843 Change-Id: Ibbfe4369176f2a367eab5a39fd742f425b017288
* | | | | | | | | Merge "DO NOT MERGE: libcameraservice: Fix nullptr crash when no client." ↵Ian Pedowitz2015-10-221-2/+4
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mnc-dr-dev
| * | | | | | | | | DO NOT MERGE: libcameraservice: Fix nullptr crash when no client.Tom Keel2015-10-211-2/+4
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change prevents a crash in the camera service when the camera HAL notifies the service about the absence of a removable camera and there happens to be no client connected to the service. It checks that the pointer returned from clientToDisconnect.get() is non-null before trying to dereference it (as is done in existing code immediately below this change). Bug: 25165323 Change-Id: I8055654bac980542e63ea7f52bf897eaafbc09bc Signed-off-by: Tom Keel <thomas.keel@intel.com>
* | | | | | | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared. am: ↵Wei Jia2015-10-210-0/+0
|\ \ \ \ \ \ \ \ \ | | |_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 224858e719 am: 69c8e36da7 am: 3fcddfd23a am: e01ba47052 am: adadada4f0 am: ddb3d77dad * commit 'ddb3d77dad1766708fdb18cc48e60a663ee8e2e1': GenericSource: reset mDrmManagerClient when mDataSource is cleared.
| * | | | | | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared. am: ↵Wei Jia2015-10-211-0/+1
| |\ \ \ \ \ \ \ \ | | | |_|/ / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 224858e719 am: 69c8e36da7 am: 3fcddfd23a am: e01ba47052 am: adadada4f0 * commit 'adadada4f00eaf44bbc616be7a7d30010750560e': GenericSource: reset mDrmManagerClient when mDataSource is cleared.
| | * | | | | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared. am: ↵Wei Jia2015-10-211-0/+1
| | |\ \ \ \ \ \ \ | | | | |_|/ / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 224858e719 am: 69c8e36da7 am: 3fcddfd23a am: e01ba47052 * commit 'e01ba470525155c1c36e53d242a12a778069a5bc': GenericSource: reset mDrmManagerClient when mDataSource is cleared.
| | | * | | | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared. am: ↵Wei Jia2015-10-211-0/+1
| | | |\ \ \ \ \ \ | | | | | |_|/ / / | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 224858e719 am: 69c8e36da7 am: 3fcddfd23a * commit '3fcddfd23adc88116c8fe5ea593626bfce0b75bd': GenericSource: reset mDrmManagerClient when mDataSource is cleared.
| | | | * | | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared. am: ↵Wei Jia2015-10-211-0/+1
| | | | |\ \ \ \ \ | | | | | | |_|/ / | | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 224858e719 am: 69c8e36da7 * commit '69c8e36da7137730f4789a0d27d983b40d1f2917': GenericSource: reset mDrmManagerClient when mDataSource is cleared.
| | | | | * | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared.Wei Jia2015-10-211-0/+1
| | | | | |\ \ \ \ | | | | | | | |_|/ | | | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 224858e719 * commit '224858e719d045c8554856b12c4ab73d2375cf33': GenericSource: reset mDrmManagerClient when mDataSource is cleared.
| | | | | | * | | GenericSource: reset mDrmManagerClient when mDataSource is cleared.Wei Jia2015-10-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25070434 Change-Id: Iade3472c496ac42456e42db35e402f7b66416f5b (cherry picked from commit b41fd0d4929f0a89811bafcc4fd944b128f00ce2)
* | | | | | | | | Merge "GenericSource: reset mDrmManagerClient when mDataSource is cleared." ↵Wei Jia2015-10-211-0/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mnc-dr-dev
| * | | | | | | | | GenericSource: reset mDrmManagerClient when mDataSource is cleared.Wei Jia2015-10-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25070434 Change-Id: Iade3472c496ac42456e42db35e402f7b66416f5b
* | | | | | | | | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-210-0/+0
|\ \ \ \ \ \ \ \ \ \ | | |/ / / / / / / / | |/| | | | | | / / | |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d am: 8565726f57 am: b44e95da77 am: 699e9b0749 am: 8e4f53159c am: 8fbf202f7b am: e20b0eb88c * commit 'e20b0eb88c7593c13105b47ce383113fad247d85': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| * | | | | | | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-210-0/+0
| |\ \ \ \ \ \ \ \ | | | |/ / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d am: 8565726f57 am: b44e95da77 am: 699e9b0749 am: 8e4f53159c am: 8fbf202f7b * commit '8fbf202f7b9fa461f07b49470c2a6afe39ca6afd': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | * | | | | | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-211-1/+3
| | |\ \ \ \ \ \ \ | | | | |/ / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d am: 8565726f57 am: b44e95da77 am: 699e9b0749 am: 8e4f53159c * commit '8e4f53159c64996e1617ec589977c290fa233010': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | | * | | | | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-211-1/+3
| | | |\ \ \ \ \ \ | | | | | |/ / / / | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d am: 8565726f57 am: b44e95da77 am: 699e9b0749 * commit '699e9b0749bda03d12d6aaea9632b28d2bd9e6fb': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | | | * | | | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-211-1/+3
| | | | |\ \ \ \ \ | | | | | | |/ / / | | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d am: 8565726f57 am: b44e95da77 * commit 'b44e95da772bb26fa9fc4cdc04cf51b7d42344ae': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | | | | * | | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-201-1/+3
| | | | | |\ \ \ \ | | | | | | | |/ / | | | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d am: 8565726f57 * commit '8565726f5775a6db97a394aa18a1f6b0e1ce69b7': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | | | | | * | | Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-201-1/+3
| | | | | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc am: 781cd4f37d * commit '781cd4f37d4b81a8e5af45a3ba6cdd4cdd209a3e': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | | | | | | * \ \ Merge "stagefright: MPEG4Extractor: allow \'hdlr\' box before first track" ↵Jon Larimer2015-10-201-1/+3
| | | | | | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev am: b1a13d01dc * commit 'b1a13d01dccbc48ea54aeb4a4ba7fce636ff1daa': stagefright: MPEG4Extractor: allow 'hdlr' box before first track
| | | | | | | | * \ \ Merge "stagefright: MPEG4Extractor: allow 'hdlr' box before first track" ↵Jon Larimer2015-10-201-1/+3
| | | | | | | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into klp-dev
| | | | | | | | | * | | stagefright: MPEG4Extractor: allow 'hdlr' box before first trackLajos Molnar2015-10-021-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 21725583 Change-Id: I799c1967759c7e49fb50281a1708188450caac77 (cherry picked from commit cf75af8f76265fb2909028f5dc68c7029dbe5f49)
* | | | | | | | | | | | Merge "audio policy: bind setMode() and setPhoneState() operations" into mnc-devChristian Bejram2015-10-200-0/+0
|\ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 4f16d20070 * commit '4f16d200709123a32b16b0e64ce821d6c0893fff': audio policy: bind setMode() and setPhoneState() operations
| * | | | | | | | | | | Merge "audio policy: bind setMode() and setPhoneState() operations" into mnc-devChristian Bejram2015-10-201-1/+5
| |\ \ \ \ \ \ \ \ \ \ \
| | * | | | | | | | | | | audio policy: bind setMode() and setPhoneState() operationsEric Laurent2015-10-161-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No routing operation should be allowed between setMode() and setPhoneState() when starting a call as the audio HAL relies on a precise sequence of mode change and routing change to select the initial audio device for the call. Bug: 24083591. Change-Id: I2d5ef62c11cf7aedc2ec7ca5e5fadd7ac875afbc
* | | | | | | | | | | | | Merge "AudioPolicyService: fix race in AudioCommandThread" into mnc-devChristian Bejram2015-10-200-0/+0
|\ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 81fe612e61 * commit '81fe612e61475bb395e167c72b785912da0230bf': AudioPolicyService: fix race in AudioCommandThread
| * | | | | | | | | | | | Merge "AudioPolicyService: fix race in AudioCommandThread" into mnc-devChristian Bejram2015-10-201-8/+16
| |\ \ \ \ \ \ \ \ \ \ \ \ | | |/ / / / / / / / / / /
| | * | | | | | | | | | | AudioPolicyService: fix race in AudioCommandThreadEric Laurent2015-10-161-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixe race condition in AudioCommandThread::threadLoop() where a command can be inserted in first position in the queue after the sleep time has been calculated causing a longer delay than expected. Also fix a failure to hold a wake lock while commands are still in the queue. Bug: 22707905. Change-Id: I813626986677bf00106acb37ee20d3dd75d5cf33
* | | | | | | | | | | | | am 32ba6ec7: am 0378676b: am 92990810: am b1231923: am e550d213: am ↵Lajos Molnar2015-10-191-0/+4
|\ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f70b69a8: Merge "stagefright: check bounds for MediaCodecList.getCodecInfo" into lmp-dev * commit '32ba6ec761fc62f7da217281ac5bb598ffed2db8': stagefright: check bounds for MediaCodecList.getCodecInfo
| * | | | | | | | | | | | am 0378676b: am 92990810: am b1231923: am e550d213: am f70b69a8: Merge ↵Lajos Molnar2015-10-191-0/+4
| |\ \ \ \ \ \ \ \ \ \ \ \ | | |/ / / / / / / / / / / | |/| / / / / / / / / / / | | |/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "stagefright: check bounds for MediaCodecList.getCodecInfo" into lmp-dev * commit '0378676b3f12158537a01916e69f6ab51817605f': stagefright: check bounds for MediaCodecList.getCodecInfo
| | * | | | | | | | | | am 92990810: am b1231923: am e550d213: am f70b69a8: Merge "stagefright: ↵Lajos Molnar2015-10-191-0/+4
| | |\ \ \ \ \ \ \ \ \ \ | | | |/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | check bounds for MediaCodecList.getCodecInfo" into lmp-dev * commit '92990810407a2e1101f5db156c1e264887886c82': stagefright: check bounds for MediaCodecList.getCodecInfo
| | | * | | | | | | | | am b1231923: am e550d213: am f70b69a8: Merge "stagefright: check bounds for ↵Lajos Molnar2015-10-191-0/+4
| | | |\ \ \ \ \ \ \ \ \ | | | | |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MediaCodecList.getCodecInfo" into lmp-dev * commit 'b1231923f134a167a0351091d8944b7583928a4f': stagefright: check bounds for MediaCodecList.getCodecInfo
| | | | * | | | | | | | am e550d213: am f70b69a8: Merge "stagefright: check bounds for ↵Lajos Molnar2015-10-191-0/+4
| | | | |\ \ \ \ \ \ \ \ | | | | | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MediaCodecList.getCodecInfo" into lmp-dev * commit 'e550d21360287c752fd79a67f1962244ee272be1': stagefright: check bounds for MediaCodecList.getCodecInfo
| | | | | * | | | | | | am f70b69a8: Merge "stagefright: check bounds for ↵Lajos Molnar2015-10-191-0/+4
| | | | | |\ \ \ \ \ \ \ | | | | | | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MediaCodecList.getCodecInfo" into lmp-dev * commit 'f70b69a8b5ed044112516bf69f69905e521070b6': stagefright: check bounds for MediaCodecList.getCodecInfo
| | | | | | * | | | | | Merge "stagefright: check bounds for MediaCodecList.getCodecInfo" into lmp-devLajos Molnar2015-10-191-0/+4
| | | | | | |\ \ \ \ \ \
| | | | | | | * | | | | | stagefright: check bounds for MediaCodecList.getCodecInfoLajos Molnar2015-10-121-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 24445127 Change-Id: I1c6cb9e2518b852d48d5d0d625b54409bd4e13ec
* | | | | | | | | | | | | libcameraservice: Fix ALOG prints in FlashLight.Ranjith Kagathi Ananda2015-10-161-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add missing __FUNCTION__ arguments into log statements. Ack by: Dilip Gopalakrishna Bug: 25023187 Change-Id: I0256bad626d490fb9360a73c104afaad7a012a97