1. 20 Apr, 2017 3 commits
    • Fix bug in updating vertex attribs with client memory pointers · 4181bc97
      Shao authored
      In DEBUG version, when using OpenGL back-ends, ANGLE may meet an
      INVALID_OPERATION error from driver when attemping to update an
      attribute which is disabled and using a client memory pointer.
      
      This patch fixes this bug by skipping such vertex attributes when
      updating them to driver. With this patch the process to update
      vertex attributes should be:
      (1) For enabled attributes using client memory pointer:
          update by streaming mode in streamAttributes()
      (2) For disabled attributes using client memory pointer:
          just label them dirty and skip them
      (3) For attributes using buffer objects:
          update with vertexAttrib*Pointer
      
      BUG=angleproject:1942
      
      Change-Id: I57043e5904eb4a342fa22d449d98a957010170d6
      Reviewed-on: https://chromium-review.googlesource.com/456747
      Commit-Queue: Geoff Lang <geofflang@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
    • Key the format tables on internal format and type. · ca27139e
      Geoff Lang authored
      Keying the format tables on internal format alone is not enough to fully
      validate the unsized formats which require additional type information.
      
      This CL has no functional changes, it just splits the tables and updates
      the calls to GetInternalFormat info to provide type information when the
      format is not sized.
      
      BUG=angleproject:1523
      BUG=angleproject:1958
      BUG=angleproject:1228
      
      Change-Id: I37e5201e7f54fa8eca01b8a6e64b11a6b94484e7
      Reviewed-on: https://chromium-review.googlesource.com/468449
      Commit-Queue: Geoff Lang <geofflang@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    • Never add declarations without children to the AST · 8162926b
      Olli Etuaho authored
      When block nodes were being created for loop bodies that didn't have
      braces in the parsed source, the code didn't check if the loop body
      was a declaration node without children. Always use appendStatement()
      for adding statements to a block, so that declaration nodes without
      children don't end up in the AST.
      
      Similarly make sure that loop init nodes aren't declarations without
      children.
      
      BUG=chromium:712550
      TEST=angle_end2end_tests
      
      Change-Id: I5e79b700fe6158fa2422fcf4cd13818b2bd24863
      Reviewed-on: https://chromium-review.googlesource.com/481660Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
  2. 19 Apr, 2017 7 commits
  3. 18 Apr, 2017 2 commits
  4. 14 Apr, 2017 1 commit
  5. 13 Apr, 2017 4 commits
  6. 12 Apr, 2017 6 commits
  7. 11 Apr, 2017 5 commits
  8. 10 Apr, 2017 2 commits
  9. 07 Apr, 2017 2 commits
  10. 06 Apr, 2017 4 commits
  11. 05 Apr, 2017 4 commits