Skip to content

Instantly share code, notes, and snippets.

View gravesisme's full-sized avatar

David Graves gravesisme

View GitHub Profile
@gravesisme
gravesisme / DeadlockExample.java
Created April 11, 2017 19:43
Semaphore Deadlock Example
public class DeadlockExample implements Runnable {
private final Semaphore m_lock = new Semaphore(1);
private void func1() throws InterruptedException {
System.out.println("Func1: acquiring lock...");
m_lock.acquire();
System.out.println("Func1: acquired lock");
func2();
m_lock.release();
@gravesisme
gravesisme / gist:52e4e6338037249c9fc062f217c2e78b
Created February 2, 2017 06:46
Android Support Lib 25 Shared Element Fragment Transition Crash
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object android.support.v4.util.SimpleArrayMap.get(java.lang.Object)' on a null object reference
at android.support.v4.app.FragmentTransition.getInEpicenterView(FragmentTransition.java:817)
at android.support.v4.app.FragmentTransition.access$400(FragmentTransition.java:37)
at android.support.v4.app.FragmentTransition$4.run(FragmentTransition.java:657)
at android.support.v4.app.OneShotPreDrawListener.onPreDraw(OneShotPreDrawListener.java:64)
at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:944)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2205)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6337)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)