Staging
v0.5.1
https://github.com/python/cpython
Revision b1355352d14a0a67107aba7ec6f233336f17716a authored by Miss Islington (bot) on 30 November 2018, 15:32:12 UTC, committed by GitHub on 30 November 2018, 15:32:12 UTC

Fix an undefined behaviour in the pthread implementation of
PyThread_start_new_thread(): add a function wrapper to always return
NULL.

Add pythread_callback struct and pythread_wrapper() to thread_pthread.h.
(cherry picked from commit 9eea6eaf23067880f4af3a130e3f67c9812e2f30)

Co-authored-by: Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com>
1 parent 365f21c
Raw File
Tip revision: b1355352d14a0a67107aba7ec6f233336f17716a authored by Miss Islington (bot) on 30 November 2018, 15:32:12 UTC
bpo-33015: Fix UB in pthread PyThread_start_new_thread (GH-6008)
Tip revision: b135535
docker-steps.yml
steps:
- checkout: self
  clean: true
  fetchDepth: 5

- ${{ if ne(parameters.targetBranch, '') }}:
  - script: |
     git fetch -q origin ${{ parameters.targetbranch }}
     if ! git diff --name-only HEAD $(git merge-base HEAD FETCH_HEAD) | grep -qvE '(\.rst$|^Doc|^Misc)'
     then
       echo "Only docs were updated, stopping build process."
       echo "##vso[task.setvariable variable=DocOnly]true"
       exit
     fi
    displayName: Detect doc-only changes

- task: docker@0
  displayName: 'Configure CPython (debug)'
  inputs:
    action: 'Run an image'
    imageName: $(imageName)
    volumes: |
      $(build.sourcesDirectory):/src
      $(build.binariesDirectory):/build
    workDir: '/src'
    containerCommand: './configure --with-pydebug'
    detached: false
  condition: and(succeeded(), ne(variables['DocOnly'], 'true'))

- task: docker@0
  displayName: 'Build CPython'
  inputs:
    action: 'Run an image'
    imageName: $(imageName)
    volumes: |
      $(build.sourcesDirectory):/src
      $(build.binariesDirectory):/build
    workDir: '/src'
    containerCommand: 'make -s -j4'
    detached: false
  condition: and(succeeded(), ne(variables['DocOnly'], 'true'))

- task: docker@0
  displayName: 'Display build info'
  inputs:
    action: 'Run an image'
    imageName: $(imageName)
    volumes: |
      $(build.sourcesDirectory):/src
      $(build.binariesDirectory):/build
    workDir: '/src'
    containerCommand: 'make pythoninfo'
    detached: false
  condition: and(succeeded(), ne(variables['DocOnly'], 'true'))

- task: docker@0
  displayName: 'Tests'
  inputs:
    action: 'Run an image'
    imageName: $(imageName)
    volumes: |
      $(build.sourcesDirectory):/src
      $(build.binariesDirectory):/build
    workDir: '/src'
    containerCommand: 'make buildbottest TESTOPTS="-j4 -uall,-cpu --junit-xml=/build/test-results.xml"'
    detached: false
  condition: and(succeeded(), ne(variables['DocOnly'], 'true'))

- task: PublishTestResults@2
  displayName: 'Publish Test Results'
  inputs:
    testResultsFiles: '$(build.binariesDirectory)/test-results.xml'
    mergeTestResults: true
    testRunTitle: $(testRunTitle)
    platform: $(testRunPlatform)
  condition: and(succeededOrFailed(), ne(variables['DocOnly'], 'true'))
back to top