msdk: Fix abort when drm device won't open

If the drm device node fails to open or vaapi use fails, the msdkcontext
closes the session but does not initialize to NULL.
So, when the context is finalized, the session is double freed and abort occurs.
26 jobs for failed-msdk-context in 30 minutes and 30 seconds
latest
Status Name Job ID Coverage
  Preparation
passed gst indent #2033428

00:00:30

passed manifest #2033427
manual

00:00:23

 
  Build
passed build cerbero cross-android universal #2033438
gstreamer

00:11:55

passed build cerbero cross-ios universal #2033442
gst-ios-13.2

00:19:53

passed build cerbero cross win32 #2033439
gstreamer

00:08:28

passed build cerbero cross win64 #2033440
gstreamer

00:03:57

passed build cerbero fedora x86_64 #2033437
gstreamer

00:05:50

passed build cerbero macos x86_64 #2033441
gst-macos-10.15

00:12:12

passed build clang fedora x86_64 #2033433

00:08:58

passed build fedora x86_64 #2033429

00:07:01

manual build msys2 #2033436
docker windows 1809 allowed to fail manual
passed build nodebug fedora x86_64 #2033430

00:05:03

passed build static fedora x86_64 #2033431

00:14:26

passed build static nodebug fedora x86_64 #2033432

00:05:03

passed build vs2017 amd64 #2033434
docker windows 1809

00:11:59

passed build vs2017 x86 #2033435
docker windows 1809

00:12:23

 
  Test
passed check fedora #2033896
gstreamer

00:03:46

passed integration testsuites fedora 1/4 #2033444
gstreamer

00:14:46

passed integration testsuites fedora 2/4 #2033445
gstreamer

00:20:12

passed integration testsuites fedora 3/4 #2033446
gstreamer

00:13:33

passed integration testsuites fedora 4/4 #2033447
gstreamer

00:14:02

passed valgrind bad #2033448
gstreamer

00:07:18

failed check fedora #2033443
gstreamer

00:04:08

 
  Integrate
passed cross-android universal examples #2033449

00:06:38

passed cross-ios universal examples #2033451
gst-ios-13.2

00:02:49

passed documentation #2033450

00:04:21