{
  "_class" : "hudson.matrix.MatrixRun",
  "actions" : [
    {
      
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UpstreamCause",
          "shortDescription" : "Started by upstream project \"jogl\" build number 897",
          "upstreamBuild" : 897,
          "upstreamProject" : "jogl",
          "upstreamUrl" : "job/jogl/"
        }
      ]
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 897,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
            "branch" : [
              {
                "SHA1" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
            "branch" : [
              {
                "SHA1" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
        "branch" : [
          {
            "SHA1" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "git://jogamp.org/srv/scm/jogl.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.junit.TestResultAction",
      "failCount" : 18,
      "skipCount" : 0,
      "totalCount" : 1030,
      "urlName" : "testReport"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "macos-x86_64",
  "duration" : 2522877,
  "estimatedDuration" : 3583845,
  "executor" : None,
  "fullDisplayName" : "jogl » macos-x86_64 macos-x86_64",
  "id" : "2013-01-19_07-30-38",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 897,
  "queueId" : -1,
  "result" : "UNSTABLE",
  "timestamp" : 1358577038000,
  "url" : "https://jogamp.org/chuck/job/jogl/label=macos-x86_64/897/",
  "builtOn" : "macosx64-NV320M-10_6-jogamp-x64-sgothel-012",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/newt/classes/jogamp/newt/driver/linux/LinuxMouseTracker.java"
        ],
        "commitId" : "7c1b15bfb00b36e80284701b1ede992b7eb82ef4",
        "timestamp" : 1358258191000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/xerxes",
          "fullName" : "xerxes"
        },
        "authorEmail" : "xerxes@zafena.se",
        "comment" : "LinuxMouseTracker: Fix inverted Y-axis & missing button release.\u000a\u000aSigned-off-by: Xerxes Rånby <xerxes@zafena.se>\u000a",
        "date" : "2013-01-15T14:56:31+0100",
        "id" : "7c1b15bfb00b36e80284701b1ede992b7eb82ef4",
        "msg" : "LinuxMouseTracker: Fix inverted Y-axis & missing button release.",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/newt/classes/jogamp/newt/driver/linux/LinuxMouseTracker.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/scripts/tests.sh",
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java"
        ],
        "commitId" : "5060b728b26a89a14367f8fca9f4eb7968f719ca",
        "timestamp" : 1358270690000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "ShaderState: Reduce hash-map utilization at shader switch (reset uniforms/attributes); Refine API doc.\u000a",
        "date" : "2013-01-15T18:24:50+0100",
        "id" : "5060b728b26a89a14367f8fca9f4eb7968f719ca",
        "msg" : "ShaderState: Reduce hash-map utilization at shader switch (reset",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "README.txt"
        ],
        "commitId" : "f89fab356c556bff91cfc74e1f723ae5477de9db",
        "timestamp" : 1358350386000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "README: Add new IRC channel, mark Jabber deprecated\u000a",
        "date" : "2013-01-16T16:33:06+0100",
        "id" : "f89fab356c556bff91cfc74e1f723ae5477de9db",
        "msg" : "README: Add new IRC channel, mark Jabber deprecated",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "README.txt"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "LICENSE.txt"
        ],
        "commitId" : "9c189b4202b25f08b0bddd9dcda4f085ec85912b",
        "timestamp" : 1358350468000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "README: Add new IRC channel, mark Jabber deprecated\u000a",
        "date" : "2013-01-16T16:34:28+0100",
        "id" : "9c189b4202b25f08b0bddd9dcda4f085ec85912b",
        "msg" : "README: Add new IRC channel, mark Jabber deprecated",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "LICENSE.txt"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/android/LauncherUtil.java"
        ],
        "commitId" : "896a0821b78c9aadf38e0d881922e03849584984",
        "timestamp" : 1358468624000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Sync LauncherUtil w/ GlueGen commit 1b9f0739ecc25105384b557afa698c42e08d4cc6 (adding main-cmdline-args)\u000a",
        "date" : "2013-01-18T01:23:44+0100",
        "id" : "896a0821b78c9aadf38e0d881922e03849584984",
        "msg" : "Sync LauncherUtil w/ GlueGen commit",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/android/LauncherUtil.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestBug669RecursiveGLContext02NEWT.java",
          "src/jogl/classes/jogamp/opengl/GLContextImpl.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestBug669RecursiveGLContext01NEWT.java",
          "src/jogl/classes/javax/media/opengl/GLContext.java",
          "make/scripts/tests.sh",
          "src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java"
        ],
        "commitId" : "34687193484b2404d83eebf5d008b71d54e52286",
        "timestamp" : 1358473115000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix Bug 669: Recursive GLContext makeCurrent()/release()\u000a\u000aCulprit:\u000a  GLContext's makeCurrent() didn't clear the boolean flag 'unlockContextAndSurface'\u000a  in case the context is already current (-> recursion).\u000a  Above case was detected within a code block tailed by a finally block,\u000a  which acted on mentioned flag, i.e. called lock.unlock() and hence decremented the lock count\u000a  even though the method return w/ successful state.\u000a\u000a  Fixed.\u000a\u000aAdded debug code:\u000a  GLContext.release() debug code (DEBUG | TRACE_SWITCH),\u000a  recording stack trace of last release() call, which is dumped in case no current was current.\u000a\u000aAdded 2 unit tests:\u000a  - Simple recursive GLContext makeCurrent()/release() from within GLEventListener's display().\u000a    Test also validates lock count and lock ownership.\u000a\u000a  - GLAutoDrawable display() of another GLAutoDrawable\u000a    from within GLEventListener's display(..).\u000a",
        "date" : "2013-01-18T02:38:35+0100",
        "id" : "34687193484b2404d83eebf5d008b71d54e52286",
        "msg" : "Fix Bug 669: Recursive GLContext makeCurrent()/release()",
        "paths" : [
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestBug669RecursiveGLContext01NEWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestBug669RecursiveGLContext02NEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLContext.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/newt/classes/jogamp/newt/driver/android/WindowDriver.java",
          "src/newt/classes/jogamp/newt/WindowImpl.java",
          "make/scripts/adb-launch-main.sh",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java",
          "make/scripts/adb-launch-junit.sh",
          "src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java",
          "make/scripts/tests.sh",
          "src/test/com/jogamp/opengl/test/android/NEWTGearsES2ActivityLauncher.java"
        ],
        "commitId" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
        "timestamp" : 1358571896000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "NEWT/Android: Full Lifecycle for WindowDriver; Using static ViewGroup; AWTRobotUtil: More tolerant for non AWT env.; Fix adb-launch-*\u000a\u000a- NEWT/Android WindowDriver\u000a  - Full Lifecycle, remove refs on closeNative()\u000a  - Respect isFullscreen()\u000a  - Using static ViewGroup if available and surface not ready, allows running from main()\u000a\u000a- AWTRobotUtil: More tolerant for non AWT env.\u000a  - Check for NEWT first\u000a  - Only use AWT iff available, which allows running on Android\u000a\u000a- Fix adb-launch-*\u000a  - Launch main/junit tests\u000a",
        "date" : "2013-01-19T06:04:56+0100",
        "id" : "50f997557b91a2f014ef0c2ea848c5c326d0cfb2",
        "msg" : "NEWT/Android: Full Lifecycle for WindowDriver; Using static ViewGroup;",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java"
          },
          {
            "editType" : "add",
            "file" : "make/scripts/adb-launch-junit.sh"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/jogamp/newt/driver/android/WindowDriver.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/jogamp/newt/WindowImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/android/NEWTGearsES2ActivityLauncher.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/adb-launch-main.sh"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/rob.hatcherson",
      "fullName" : "rob.hatcherson"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/xerxes",
      "fullName" : "xerxes"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/harvey.harrison",
      "fullName" : "harvey.harrison"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sgothel",
      "fullName" : "Sven Gothel"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/wamei.cho",
      "fullName" : "wamei.cho"
    }
  ]
}