Fail gracefully than assert on RSoV context

Bug: 30964317

Fail RSoV context creation without assertion if Vulkan initialization
fails, e.g., if the GPU does not support Vulkan or if a GPU does not
exist at all.

Also avoided memory leak in Hal initialization code on failures to
create CPU referenence or RSoV context.

Test: RSoV on Volantis

Change-Id: I49320607bb211e568008193fee1cca299fd4a80e
4 files changed
tree: 1fc94398c51a6e903c891cc880ad4e5d0ea09a19
  1. cpp/
  2. cpu_ref/
  3. driver/
  4. rsov/
  5. script_api/
  6. server/
  7. support/
  8. tests/
  9. Android.bp
  10. Android.mk
  11. build_rs.py
  12. CleanSpec.mk
  13. libRS.map
  14. rs.h
  15. rs.spec
  16. rs_compat.spec
  17. rs_hal.h
  18. rsAllocation.cpp
  19. rsAllocation.h
  20. rsAnimation.cpp
  21. rsAnimation.h
  22. rsApiAllocation.cpp
  23. rsApiContext.cpp
  24. rsApiDevice.cpp
  25. rsApiElement.cpp
  26. rsApiFileA3D.cpp
  27. rsApiMesh.cpp
  28. rsApiType.cpp
  29. rsClosure.cpp
  30. rsClosure.h
  31. rsCompatibilityLib.cpp
  32. rsCompatibilityLib.h
  33. rsComponent.cpp
  34. rsComponent.h
  35. rsContext.cpp
  36. rsContext.h
  37. rsCppUtils.cpp
  38. rsCppUtils.h
  39. rsDebugHelper.h
  40. rsDefines.h
  41. rsDevice.cpp
  42. rsDevice.h
  43. rsDriverLoader.cpp
  44. rsElement.cpp
  45. rsElement.h
  46. rsEnv.h
  47. rsFBOCache.cpp
  48. rsFBOCache.h
  49. rsFifo.h
  50. rsFifoSocket.cpp
  51. rsFifoSocket.h
  52. rsFileA3D.cpp
  53. rsFileA3D.h
  54. rsFont.cpp
  55. rsFont.h
  56. rsg.spec
  57. rsg_generator.c
  58. rsgApi.cpp.rsg
  59. rsgApiFuncDecl.h.rsg
  60. rsgApiReplay.cpp.rsg
  61. rsgApiStructs.h.rsg
  62. rsGrallocConsumer.cpp
  63. rsGrallocConsumer.h
  64. rsInternalDefines.h
  65. rsList.h
  66. rsMap.h
  67. rsMatrix2x2.cpp
  68. rsMatrix2x2.h
  69. rsMatrix3x3.cpp
  70. rsMatrix3x3.h
  71. rsMatrix4x4.cpp
  72. rsMatrix4x4.h
  73. rsMesh.cpp
  74. rsMesh.h
  75. rsMutex.cpp
  76. rsMutex.h
  77. rsObjectBase.cpp
  78. rsObjectBase.h
  79. rsProgram.cpp
  80. rsProgram.h
  81. rsProgramBase.h
  82. rsProgramFragment.cpp
  83. rsProgramFragment.h
  84. rsProgramRaster.cpp
  85. rsProgramRaster.h
  86. rsProgramStore.cpp
  87. rsProgramStore.h
  88. rsProgramVertex.cpp
  89. rsProgramVertex.h
  90. rsRuntime.h
  91. rsSampler.cpp
  92. rsSampler.h
  93. rsScript.cpp
  94. rsScript.h
  95. rsScriptC.cpp
  96. rsScriptC.h
  97. rsScriptC_Lib.cpp
  98. rsScriptC_LibGL.cpp
  99. rsScriptGroup.cpp
  100. rsScriptGroup.h
  101. rsScriptGroup2.cpp
  102. rsScriptGroup2.h
  103. rsScriptGroupBase.h
  104. rsScriptIntrinsic.cpp
  105. rsScriptIntrinsic.h
  106. rsSignal.cpp
  107. rsSignal.h
  108. rsStream.cpp
  109. rsStream.h
  110. rsThreadIO.cpp
  111. rsThreadIO.h
  112. rsType.cpp
  113. rsType.h
  114. rsUtils.h
  115. run_rs_cts.sh
  116. spec.h
  117. spec.l
  118. update-prebuilts.py
  119. update_rs_prebuilts.sh