{
  "_class" : "hudson.matrix.MatrixRun",
  "actions" : [
    {
      
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UpstreamCause",
          "shortDescription" : "Started by upstream project \"jogl\" build number 1,227",
          "upstreamBuild" : 1227,
          "upstreamProject" : "jogl",
          "upstreamUrl" : "job/jogl/"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 1227,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
            "branch" : [
              {
                "SHA1" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
            "branch" : [
              {
                "SHA1" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
        "branch" : [
          {
            "SHA1" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "git://jogamp.org/srv/scm/jogl.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.junit.TestResultAction",
      "failCount" : 1,
      "skipCount" : 0,
      "totalCount" : 884,
      "urlName" : "testReport"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#1227",
  "duration" : 6328058,
  "estimatedDuration" : 3745003,
  "executor" : None,
  "fullDisplayName" : "jogl » windows-x86_64 #1227",
  "id" : "2014-02-18_21-56-19",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 1227,
  "queueId" : -1,
  "result" : "UNSTABLE",
  "timestamp" : 1392756979000,
  "url" : "https://jogamp.org/chuck/job/jogl/label=windows-x86_64/1227/",
  "builtOn" : "win64-nvgtx460-win7-jogamp-x64-sgothel-011",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLWindowNEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java"
        ],
        "commitId" : "d46d9ad8f998a7128d9f023294d5f489673d6d8a",
        "timestamp" : 1392743566000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 975 - GLJPanel's OffscreenDrawable shall not double swap - Refine unit test for visual validation of 'no frame lag'\u000a\u000aTo validate whether a 'display' command w/o animator results to the desired frame\u000awe introduce a 'userCounter' in TextRendererGLEL.\u000a\u000aThe latter gets increased and maybe visually validated by a key-press -> display.\u000a\u000aResults: In all modes, MSAA or !MSAA, or flip - the result is valid.\u000a\u000aTested on windows and linux.\u000a",
        "date" : "2014-02-18T18:12:46+0100",
        "id" : "d46d9ad8f998a7128d9f023294d5f489673d6d8a",
        "msg" : "Bug 975 - GLJPanel's OffscreenDrawable shall not double swap - Refine",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLWindowNEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/opengl/util/GLDrawableUtil.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java",
          "src/jogl/classes/javax/media/opengl/GLBase.java",
          "src/jogl/classes/com/jogamp/opengl/util/TileRendererBase.java",
          "src/jogl/classes/javax/media/opengl/GLContext.java",
          "src/test/com/jogamp/opengl/test/junit/util/UITestCase.java",
          "src/jogl/classes/javax/media/opengl/awt/GLJPanel.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLWindowNEWT.java"
        ],
        "commitId" : "41190c3830157abdf9649cbf7767e57108f55075",
        "timestamp" : 1392752826000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 975 - GLJPanel's OffscreenDrawable shall not double swap - Fix auto-swap mechanism ; Refined API doc getDefaultReadBuffer() ; Add GLDrawableUtil.swapBuffersBeforeRead(..)\u000a\u000aCommit 82f679b064784213591b460fc5eaa1f5f196fbd1 which introduces the default swap-buffers\u000amechanism is erroneous:\u000a\u000aThe OffscreenBack backend requires the following operation order:\u000a\u000aOrder-1:\u000a  [1] - GL display\u000a  [2] - GL swapBuffers (always due to single-buffer non-MSAA or MSAA offscreen drawable)\u000a  [3] - readPixels\u000a\u000a+++\u000a\u000aCommit 82f679b064784213591b460fc5eaa1f5f196fbd1 however introduced:\u000a\u000aOrder-2:\u000a  [a] - GL display\u000a  [b] - readPixels\u000a  [c] - GL swapBuffers (always due to single-buffer non-MSAA or MSAA offscreen drawable)\u000a\u000asince [a] and [b] happened in Updater's display method, and [c] followed the same\u000atriggered by GLAutoDrawableHelper.\u000a\u000a+++\u000a\u000aThe proof, commit d46d9ad8f998a7128d9f023294d5f489673d6d8a, is faulty,\u000asince it always included the 'snapshot' GL event listener\u000awhich turned-off auto-swap and swapped before read-pixels.\u000aTL;DR it enforced proper Order-1.\u000a\u000a+++\u000a\u000aThis fix allows the Backend to intercept disable GLDrawableHelper's setAutoSwapBufferMode(..)\u000aand perform the auto-swap mode itself in the proper Order-1.\u000a\u000aThe unit test has been refined to optionally disable the snapshot\u000ato validate auto-swap mode.\u000a\u000a+++\u000a\u000aRefined GLBase and GLContext's API doc for 'getDefaultReadBuffer()'\u000a\u000a+++\u000a\u000aAdd GLDrawableUtil.swapBuffersBeforeRead(..)\u000aand reuse it for TileRendererBase (original impl.).\u000a",
        "date" : "2014-02-18T20:47:06+0100",
        "id" : "41190c3830157abdf9649cbf7767e57108f55075",
        "msg" : "Bug 975 - GLJPanel's OffscreenDrawable shall not double swap - Fix",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/GLDrawableUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/TileRendererBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLWindowNEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/awt/GLJPanel.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLContext.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/util/UITestCase.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/jogamp/opengl/GLFBODrawableImpl.java",
          "src/jogl/classes/jogamp/opengl/GLContextImpl.java",
          "src/jogl/classes/jogamp/opengl/GLDrawableImpl.java"
        ],
        "commitId" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
        "timestamp" : 1392752977000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GLContextImpl/GLDrawableImpl.getDefaultReadBuffer(..): Pass hint whether dedicated read-drawable is being used (double buffering)\u000a",
        "date" : "2014-02-18T20:49:37+0100",
        "id" : "b96fc594f15fcf9ee0fd238ce8d7a10aea781d32",
        "msg" : "GLContextImpl/GLDrawableImpl.getDefaultReadBuffer(..): Pass hint whether",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLFBODrawableImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLDrawableImpl.java"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sgothel",
      "fullName" : "Sven Gothel"
    }
  ]
}