Created by Thomas Kluyver on 2013-01-08 and last modified on 2015-06-26
Get this branch:
bzr branch lp:~pygame/pygame/trunk

Branch merges

Related bugs

Related blueprints

Branch information


Import details

Import Status: Failed

This branch is an import of the HEAD branch of the Git repository at git://github.com/illume/pygame.git.

The import has been suspended because it failed 5 or more times in succession.

Last successful import was on 2015-06-29.

Import started on 2015-07-03 on russkaya and finished on 2015-07-03 taking 30 seconds — see the log
Import started on 2015-07-01 on pear and finished on 2015-07-01 taking 15 seconds — see the log
Import started on 2015-06-30 on russkaya and finished on 2015-06-30 taking 30 seconds — see the log
Import started on 2015-06-30 on russkaya and finished on 2015-06-30 taking 25 seconds — see the log
Import started on 2015-06-29 on neumayer and finished on 2015-06-29 taking 30 seconds — see the log

Recent revisions

2405. By Lenard Lindstrom <email address hidden> on 2015-06-26

Fix Issue #246: Surface test fails on x86_64 Ubuntu

Unit tests SurfaceSelfBlitTest.test_colorkey and
SurfaceSelfBlitTest.test_blanket_alpha of surface_test.py failed when running
the unit tests with the video driver set to dummy. In particular, the blit to
the 8-bit surface tmp of the 32 bit surface comp failed to copy the pixel
colors correctly.

The pygame.Surface.blit() method avoids blitting a per-pixel alpha surface to
an 8-bit indexed surface, as this did not work correctly. So the source
surface in the blit would first be converted to another format, presumably one
without per-pixel alpha. If the display was enabled, then SDL_DisplayFormat was used to do the conversion. Unfortunately, when the display driver is dummy, the
surface returned by SDL_DisplayFormat returns an 8-bit indexed surface, with
differing palettes depending on the build.

In the above unit tests, the palette returned by SDL_DisplayFormat did not
support the test color used, so replaced it with something else. The unit test
assertion would then fail, as the source and comparison surfaces did not match.

Besides the problem with the dummy video driver, using SDL_DisplayFormat
assumes the display format has no per-pixel alpha. This assumption is probably
no longer valid. So to fix the bug, the special case where SDL_DisplayFormat was
used was removed, with the known default intermediate surface format always

2404. By Lenard Lindstrom <email address hidden> on 2015-06-26

Reformat PySurface_Blit in surface.c debugging Issue #246

2403. By Lenard Lindstrom <email address hidden> on 2015-06-22

Fix a new buffer bug in the mixer module

For the Py_buffer.format field, the 'i' and 'I' type identifiers were associated
with the wrong C types. This triggered an unexpected
ValueError("Array item size 8 does not match format 'I'") exception in the
test_array_keyword test method of mixer_test.py on x86_64 Linux.

2402. By Lenard Lindstrom <email address hidden> on 2015-05-03

Fix bug where pygame.color fails the unit test for x86-32 Linux

See changeset dc57da440ac3 for the same problem with pygame.math

For gcc 4.4 to at least gcc 4.8.2, -O2 optimization reduces the precision of
floating point arithmetic on doubles, compared to unoptimized code. This caused
two test cases in color_test.py to fail.

2401. By Lenard Lindstrom <email address hidden> on 2015-05-02

Fix a bug in sysfont.py exposed by commit ae2e36d

For Python 3.x, raw font information was incorrectly converted back to byte
strings. This caused incorrect parsing of the information, which showed up
as failed unit tests. This corrects the bug, Raw data is not converted to
unicode strings for both Python 2.x and 3.x.

2400. By Lenard Lindstrom <email address hidden> on 2015-04-30

Decapitate zombie bug 52 (Motherhampster Bugzilla)

It came back. A gcc 4.4 floating point optimization changes the precision
of floating point arithmetic for doubles. The altered precision slightly
changes the results of calculations, showing up as unit test fails. The bug
fix, however, was quite specific in its application, only enabled for gcc
version 4.4. Guess what? The problem still exists with gcc 4.8.2. This commit
broadens the scope of the original fix.

2399. By Lenard Lindstrom <email address hidden> on 2015-04-30

A possible solution to Issue #131

In surface.c the surf_convert function uses memcpy to copy the source format
to the target format. This includes the palette pointer. If the target format
has a non-NULL palette pointer, the palette is checked to ensure at least one
palette color is not black. It does not matter if the target pixel format
actually uses a palette or not. So unless the target has a palette, make sure
the palette pointer is NULL.

2398. By Jason M. Marshall on 2015-04-28

Removed hard-coded font lists. They're not necessary, and updating them every time that a new OS is released would be a burden. Now, sysfont will depend on the registry (on Windows) or X11 fc-list (on any other OS) to generate a system's font list.
Ad-hoc tested sysfont changes on Windows 7 with Python 2.4 and 3.4. Tested on Mac OS X 10.4 with Python 2.7.
Close #179.
Processed with autopep8.

2397. By Lenard Lindstrom <email address hidden> on 2015-04-23

Reindent alphablit.c

Make alphablit.c control structures easier to follow. This will help when
converting it to SDL 2.

2396. By Lenard Lindstrom <email address hidden> on 2015-04-14

Close Issue #243

Issue #243: For a string with trailing spaces, freetype ignores the last space
            in boundary calculations

After the layout loop, determine if the last character in the text string
is a space by checking if its bitmap is width 0. If so, update the text
boundaries — min_x, max_x, min_y, max_y — with the current pen position, which
already includes the space's advance.

Also update change the Font.render_to example in the freetype module doc page to
reflect the removal of this "feature".

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.