Commit Graph

59 Commits

Author SHA1 Message Date
INADA Naoki 02eb4b0bd4 bpo-29110: Fix file object leak in aifc.open (GH-356) 2017-02-28 20:39:30 +09:00
Serhiy Storchaka 1aa2c0f073 Issue #23865: close() methods in multiple modules now are idempotent and more
robust at shutdown. If needs to release multiple resources, they are released
even if errors are occured.
2015-04-10 13:24:10 +03:00
Serhiy Storchaka d1a61dcc65 Issue #19623: Fixed writing to unseekable files in the aifc module.
Fixed writing 'ulaw' (lower case) compressed AIFC files.
2013-12-14 20:34:33 +02:00
Serhiy Storchaka 499d82136d Issue #18919: If the close() method of a writer in the sunau or wave module
failed, second invocation of close() and destructor no more raise an
exception.  Second invocation of close() on sunau writer now has no effects.
The aifc module now accepts lower case of names of the 'ulaw' and 'alaw'
codecs.
2013-10-12 21:35:33 +03:00
Serhiy Storchaka 986b5ee4d9 Issue #19131: The aifc module now correctly reads and writes sampwidth of
compressed streams.
2013-10-12 18:21:12 +03:00
Serhiy Storchaka 879a213736 Issue #18817: Fix a resource warning in Lib/aifc.py demo. 2013-08-25 19:12:33 +03:00
Ezio Melotti f5469cff1f #18705: fix a number of typos. Patch by Févry Thibault. 2013-08-17 15:43:51 +03:00
Serhiy Storchaka 4ed797efbc Issue #16485: Fix file descriptor not being closed if file header patching fails on closing of aifc file. 2012-12-29 22:25:59 +02:00
Antoine Pitrou 3b6a31412f Issue #13589: Fix some serialization primitives in the aifc module.
Patch by Oleg Plakhotnyuk.
2012-01-17 17:13:04 +01:00
Antoine Pitrou bca7b4894a Fix py3k warnings in the aifc module 2009-10-14 17:30:52 +00:00
R. David Murray 8fd522fb5f Issue5955: aifc's close method did not close the file it wrapped,
now it does.  This also means getfp method now returns the real fp.
2009-05-07 16:27:02 +00:00
Benjamin Peterson 0258811125 actually close files instead of leaving it to the gc #5955 2009-05-07 11:45:38 +00:00
Benjamin Peterson 2518d3c1c0 prevent ref cycles by removing bound method on close() 2009-04-30 00:23:11 +00:00
R. David Murray 25b4add5b0 Fix issue 2245. aifc now skips any chunk type it doesn't actually
process instead of throwing errors for anything not in an explicit
skip list.  This is per this spec: http://www.cnpbagwell.com/aiff-c.txt.
Spec reference and test sound file provided by Santiago Peresón, fix
based on patch by Hiroaki Kawai.
2009-04-29 13:17:37 +00:00
Brett Cannon d13e4ba416 Remove tuple parameter unpacking in aifc to silence warnings under -3. 2008-08-04 21:33:00 +00:00
Bob Ippolito 6067f20172 Add a length check to aifc to ensure it doesn't write a bogus file 2006-05-30 00:26:01 +00:00
Walter Dörwald 70a6b49821 Replace backticks with repr() or "%r"
From SF patch #852334.
2004-02-12 17:35:32 +00:00
Guido van Rossum 820819c7ca Fix wanrings about unsigned hex constants. 2002-08-12 22:11:28 +00:00
Neal Norwitz 086ac007a3 SF #515004 cleanup
- remove unnecessary imports
  - rename dum -> dummy
2002-02-11 17:56:27 +00:00
Skip Montanaro e99d5ea25b added __all__ lists to a number of Python modules
added test script and expected output file as well
this closes patch 103297.
__all__ attributes will be added to other modules without first submitting
a patch, just adding the necessary line to the test script to verify
more-or-less correct implementation.
2001-01-20 19:54:20 +00:00
Tim Peters 146965abf2 Whitespace standardization. 2001-01-14 18:09:23 +00:00
Fred Drake 227b120468 Convert some old-style string exceptions to class exceptions. 2000-08-17 05:06:49 +00:00
Thomas Wouters 7e47402264 Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in either
comments, docstrings or error messages. I fixed two minor things in
test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't").

There is a minor style issue involved: Guido seems to have preferred English
grammar (behaviour, honour) in a couple places. This patch changes that to
American, which is the more prominent style in the source. I prefer English
myself, so if English is preferred, I'd be happy to supply a patch myself ;)
2000-07-16 12:04:32 +00:00
Guido van Rossum 2663c13c5b Sjoerd Mullender:
The (relatively) new chunk module uses seek, not setpos.  One instance
of the call still needed to be fixed.
2000-03-07 15:19:31 +00:00
Guido van Rossum 4acc25bd39 Mass patch by Ka-Ping Yee:
1. Comments at the beginning of the module, before
       functions, and before classes have been turned
       into docstrings.

    2. Tabs are normalized to four spaces.

Also, removed the "remove" function from dircmp.py, which reimplements
list.remove() (it must have been very old).
2000-02-02 15:10:15 +00:00
Guido van Rossum 3601e88cb3 Sjoerd Mullender writes:
"""
Extended chunk so that it can also handle formats that are almost
according to EA IFF 85.  In particular, added options to handle
little-endian and to handle formats that include the header size in
the chunk size value.

Fixed a bug where the header size was included in the chunk size, which
it isn't according to EA IFF 85.

Added a new method getsize() to get the size of the chunk (excluding
header).

Fixed chunk documentation (TIFF doesn't look like it uses chunks).
Converted wave to use chunk.  Wave uses EA IFF 85 chunks except that
it uses little-endian encoding of integer data.

Removed __del__ methods from aifc and wave since I got an
AttributeError there upon exit.
"""
1999-08-26 15:50:43 +00:00
Fred Drake 4316135a44 Make the mode parameter to open() default in the same way as for wave.open(). 1999-06-22 21:23:23 +00:00
Guido van Rossum 8ea7bb8e78 Patch/new code by Sjoerd Mullender:
Separate the Chunk class out of the aifc module into a new "chunk" module.
1999-06-09 13:32:28 +00:00
Guido van Rossum 5c071fab8f The _comp_data() function never worked, it contained a reference to
undefined 'nframes'.  Should be self._nframes.  (Andrew Dalke & kjpylint)
1999-05-03 18:02:44 +00:00
Guido van Rossum 2c2f731daf [Sjoerd Mullender]
Don't use CL module since all constants are now in cl.
1998-08-07 15:28:23 +00:00
Guido van Rossum bb189dbcb0 Small corrections to comments that were cloned from aifc; moreover
the description of setparams() was wrong.

wave.py: Include the tag of an unknown format in the exception.
1998-04-23 21:40:02 +00:00
Guido van Rossum afe3ebfa5c Use newer struct, which handles unsigned long right 1997-01-11 19:21:09 +00:00
Guido van Rossum 36bb181cdf Rewrote _{read,write}_{short,long} to use the newly revamped struct
module.  (Small problem: struct.pack() won't deal with the Python long
ints returned by struct.unpack() for the 'L' format.  Worked around
that for now.)
1996-12-31 05:57:34 +00:00
Guido van Rossum d7abed3b14 Get rid of access statement 1996-08-20 20:40:07 +00:00
Guido van Rossum 3e7a697c55 temporarily disabled the access statements 1995-08-10 19:23:37 +00:00
Sjoerd Mullender ebea896e20 Ignore empty markers. 1994-10-03 10:21:06 +00:00
Guido van Rossum e174c1500f audiodev.py: Mac port.
Audio_mac.py: Mac specific class for audiodev.py.
aifc.py: open files for reading/writing in binary mode ('rb', 'wb').
1994-09-16 10:55:53 +00:00
Sjoerd Mullender 1f05754640 Added support for ADPCM compression. 1994-09-06 16:17:51 +00:00
Guido van Rossum b6775db241 Merge alpha100 branch back to main trunk 1994-08-01 11:34:53 +00:00
Guido van Rossum 3db6ebcc3f Use __builtin__ instead of builtin 1994-01-28 09:59:35 +00:00
Sjoerd Mullender ffe9490d79 aifc.py: framerate should be an int.
sunau.py: should convert number of frames correctly to number of bytes
	when reading.
1994-01-28 09:56:05 +00:00
Sjoerd Mullender e03bf9c497 Removed now useless convert functions. 1994-01-06 17:00:04 +00:00
Sjoerd Mullender 49c2df16f5 Removed silly dependence on AL module. 1994-01-06 16:35:34 +00:00
Sjoerd Mullender 2a45141741 aifc.py, sunau.py: Adapted comments; added access statements.
SUNAUDIODEV.py: Added some constants for Solaris.
1993-12-20 09:36:01 +00:00
Guido van Rossum 6ed9df2641 * aifc.py (Aifc_write): fix bogus reference to filename 1993-12-17 16:43:43 +00:00
Guido van Rossum 7bc817d5ba * Mass change: get rid of all init() methods, in favor of __init__()
constructors.  There is no backward compatibility.  Not everything has
  been tested.
* aiff.{py,doc}: deleted in favor of aifc.py (which contains its docs as
  comments)
1993-12-17 15:25:27 +00:00
Sjoerd Mullender feaa7d296f Don't close the file. 1993-12-16 13:56:34 +00:00
Sjoerd Mullender 43bf0bc857 aifc.py: added missing tell() method in AIFC write class;
use audioop module as backup for cl module when reading or
	 writing u-law compressed files.
sunau.py: interface with the same methods as aifc for Sun and NeXT
	  audio files
1993-12-13 11:42:39 +00:00
Sjoerd Mullender 4150ede53c Fixed dealing with faulty COMM chunks. 1993-08-26 14:12:07 +00:00
Guido van Rossum 9b3bc71598 * aifc.py: don't die on invalid MARK chunk
* calendar.py: remove stuff now built in time; some cleanup and
  generalization in the calendar printing
* cmd.py: use __init__.
* tzparse.py: This module is no longer necessary -- use builtin time instead!
1993-06-20 21:02:22 +00:00