Skip to content

Commit 588df5b

Browse files
committed
Merge branch 'master' into autobuild/alpha
2 parents 7d65912 + 015e45b commit 588df5b

File tree

1,461 files changed

+57495
-27303
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,461 files changed

+57495
-27303
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ our _master branch_ is reported as follows:
2222
- [![Build Status](https://semaphoreci.com/api/v1/pov-ray/povray/branches/master/shields_badge.svg)](https://semaphoreci.com/pov-ray/povray)
2323
(Semaphore: Ubuntu 14.04 LTE 64-bit with gcc 4.8)
2424
- [![Build Status](https://travis-ci.org/POV-Ray/povray.svg?branch=master)](https://travis-ci.org/POV-Ray/povray)
25-
(Travis CI: Ubuntu 12.04 LTE 64-bit with gcc 4.6 and with clang 4.2; OS X 10.11 with gcc 4.2 and with clang 4.2)
25+
(Travis CI: Ubuntu 12.04 LTE 64-bit with gcc 4.6; OS X 10.11 with clang 4.2)
2626

2727
License
2828
--------------------------------------

changes.txt

Lines changed: 6 additions & 152 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,12 @@ Changed Behaviour
163163
referred to as "IFF-ILBM") is now associated with the `.lbm` file extension,
164164
in addition to the `.iff` extension.
165165

166+
- The "Compression" setting now affects more file types: Specifying
167+
"Compression=1" with file type "T" (Targa) will now generate compressed Targa
168+
(same as file type "C"), and explicitly specifying "Compression=0" with file
169+
type "P"(Netpbm PPM/PGM) will generate "plain" (ASCII) Netpbm rather than
170+
"raw" (binary).
171+
166172
- A long-standing undocumented inconsistency in the treatment of backslashes
167173
in string literals, in which backslashes were essentially _not_ interpreted
168174
as escape characters _if_ the parser expected a filename, has been cleaned
@@ -204,158 +210,6 @@ Miscellaneous Improvements
204210
- Colour maps, pigment maps and the like are no longer limited to 256 entries.
205211
- The number of components ber blob is no longer artificially limited.
206212

207-
Fixed or Mitigated Issues Reported by Static Code Analysis
208-
----------------------------------------------------------
209-
210-
Coverity Scan defects targeted deliberately:
211-
212-
- CID 967251: 'Constant' variable guards dead code
213-
- CID 967254: 'Constant' variable guards dead code
214-
- CID 967261: Logically dead code
215-
- CID 967262: Logically dead code
216-
- CID 967273: Explicit null dereferenced
217-
- CID 967296: Parse Warning
218-
- CID 967297: Parse Warning
219-
- CID 967377: Uninitialized pointer field
220-
- CID 967400: Uninitialized pointer field
221-
- CID 967410: Structurally dead code
222-
- CID 967412: Structurally dead code
223-
- CID 1129008: Division or modulo by zero
224-
- CID 1129016: Uninitialized pointer read
225-
- CID 1129017: Uninitialized scalar variable
226-
- CID 1372548: Non-virtual destructor
227-
- CID 1372552: Unchecked return value
228-
- CID 1372555: Operands don't affect result
229-
- CID 1372556: Wrong operator used
230-
- CID 1372557: Wrong operator used
231-
- CID 1372558: Resource leak in object
232-
- CID 1372560: Logically dead code
233-
- CID 1372562: Non-array delete for scalars
234-
- CID 1372566: Unchecked dynamic_cast
235-
- CID 1372567: Unchecked dynamic_cast
236-
- CID 1372603: Resource leak
237-
- CID 1372604: Dereference before null check
238-
- CID 1372605: Dereference before null check
239-
- CID 1372606: Dereference before null check
240-
- CID 1372607: Dereference before null check
241-
- CID 1372608: Sizeof not portable
242-
- CID 1372626: Uninitialized scalar variable
243-
- CID 1372636: Uninitialized pointer field
244-
- CID 1372639: Uninitialized scalar field
245-
- CID 1372641: Uninitialized pointer field
246-
- CID 1372642: Uninitialized pointer field
247-
- CID 1372643: Uninitialized scalar field
248-
- CID 1372644: Uninitialized pointer field
249-
- CID 1372646: Uninitialized pointer field
250-
- CID 1372647: Uninitialized pointer field
251-
- CID 1372648: Uninitialized scalar field
252-
- CID 1372650: Uninitialized pointer field
253-
- CID 1372651: Uninitialized pointer field
254-
- CID 1372653: Uninitialized pointer field
255-
- CID 1372654: Structurally dead code
256-
- CID 1372655: Structurally dead code
257-
- CID 1372656: Structurally dead code
258-
- CID 1372657: Unused value
259-
- CID 1373648: Out-of-bounds access
260-
- CID 1373649: Free of address-of expression
261-
- CID 1373651: Logically dead code
262-
- CID 1373652: Dereference before null check
263-
- CID 1373653: Write to pointer after free
264-
- CID 1373654: Use after free
265-
266-
Coverity Scan defects eliminated in passing:
267-
268-
- CID 967238: Unchecked return value from library
269-
- CID 967239: Unchecked return value from library
270-
- CID 967252: Logically dead code
271-
- CID 967255: Logically dead code
272-
- CID 967266: Division or modulo by float zero
273-
- CID 967267: Division or modulo by float zero
274-
- CID 967272: Dereference after null check
275-
- CID 967284: Unsigned compared against 0
276-
- CID 967286: Various
277-
- CID 967290: Dereference null return value
278-
- CID 967291: Out-of-bounds write
279-
- CID 967292: Out-of-bounds access
280-
- CID 967293: Out-of-bounds access
281-
- CID 967294: Out-of-bounds access
282-
- CID 967305: Dereference before null check
283-
- CID 967306: Dereference before null check
284-
- CID 967307: Dereference before null check
285-
- CID 967310: Sizeof not portable
286-
- CID 967333: Uninitialized scalar variable
287-
- CID 967334: Uninitialized scalar variable
288-
- CID 967335: Uninitialized scalar variable
289-
- CID 967336: Uninitialized scalar variable
290-
- CID 967337: Uninitialized scalar variable
291-
- CID 967338: Uninitialized scalar variable
292-
- CID 967339: Uninitialized scalar variable
293-
- CID 967340: Uninitialized scalar variable
294-
- CID 967341: Uninitialized scalar variable
295-
- CID 967342: Uninitialized scalar variable
296-
- CID 967343: Uninitialized scalar variable
297-
- CID 967344: Uninitialized scalar variable
298-
- CID 967345: Uninitialized scalar variable
299-
- CID 967346: Uninitialized scalar variable
300-
- CID 967347: Uninitialized scalar variable
301-
- CID 967348: Uninitialized scalar variable
302-
- CID 967349: Uninitialized scalar variable
303-
- CID 967350: Uninitialized pointer read
304-
- CID 967351: Uninitialized scalar variable
305-
- CID 967352: Uninitialized scalar variable
306-
- CID 967353: Uninitialized scalar variable
307-
- CID 967354: Uninitialized scalar variable
308-
- CID 967355: Uninitialized scalar variable
309-
- CID 967356: Uninitialized scalar variable
310-
- CID 967357: Uninitialized scalar variable
311-
- CID 967366: Uninitialized scalar variable
312-
- CID 967367: Uninitialized scalar variable
313-
- CID 967368: Uninitialized scalar variable
314-
- CID 967369: Uninitialized pointer field
315-
- CID 967370: Uninitialized scalar field
316-
- CID 967371: Uninitialized pointer field
317-
- CID 967372: Uninitialized pointer field
318-
- CID 967373: Uninitialized pointer field
319-
- CID 967374: Uninitialized pointer field
320-
- CID 967375: Uninitialized pointer field
321-
- CID 967376: Uninitialized pointer field
322-
- CID 967385: Uninitialized pointer field
323-
- CID 967387: Uninitialized scalar field
324-
- CID 967392: Uninitialized pointer field
325-
- CID 967398: Uninitialized pointer field
326-
- CID 967408: Uninitialized pointer field
327-
- CID 986459: Logically dead code
328-
- CID 986460: Dereference before null check
329-
- CID 986461: Uninitialized scalar variable
330-
- CID 1129012: Out-of-bounds write
331-
- CID 1129013: Out-of-bounds read
332-
- CID 1372531: Calling risky function
333-
- CID 1372532: Division or modulo by float zero
334-
- CID 1372534: Out-of-bounds access
335-
- CID 1372535: Out-of-bounds access
336-
- CID 1372536: Out-of-bounds access
337-
- CID 1372537: Out-of-bounds access
338-
- CID 1372538: Dereference before null check
339-
- CID 1372539: String not null terminated
340-
- CID 1372540: Uninitialized pointer field
341-
- CID 1372545: Unused value
342-
- CID 1372565: Unchecked dynamic_cast
343-
- CID 1372575: Unchecked dynamic_cast
344-
- CID 1372599: Dereference null return value
345-
- CID 1372613: Uninitialized scalar variable
346-
- CID 1372614: Uninitialized scalar variable
347-
- CID 1372615: Uninitialized scalar variable
348-
- CID 1372616: Uninitialized scalar variable
349-
- CID 1372617: Uninitialized scalar variable
350-
- CID 1372619: Uninitialized scalar variable
351-
- CID 1372620: Uninitialized scalar variable
352-
- CID 1372621: Uninitialized scalar variable
353-
- CID 1372622: Uninitialized scalar variable
354-
- CID 1372623: Uninitialized scalar variable
355-
- CID 1372624: Uninitialized scalar variable
356-
- CID 1372625: Uninitialized scalar variable
357-
- CID 1372627: Uninitialized scalar variable
358-
359213
Fixed or Mitigated Bugs
360214
-----------------------
361215

distribution/scenes/camera/mesh_camera/meshcam_ortho_demo.pov

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@
4444
// create a mesh simulating an orthographic camera, with optional load/save mechanism
4545
#if (meshcam_file>0)
4646
// get the file name
47-
#declare prefix="meshcam-ortho_";
48-
#declare mesh_file=concat(concat(concat(concat(prefix,str(image_width,0,0)),"x"),str(image_height,0,0)),".inc");
47+
#declare Prefix="meshcam-ortho_";
48+
#declare mesh_file=concat(concat(concat(concat(Prefix,str(image_width,0,0)),"x"),str(image_height,0,0)),".inc");
4949
#else
5050
// ..wich should be empty to turn the mesh file off
5151
#declare mesh_file="";

distribution/scenes/camera/mesh_camera/meshcam_persp_demo.pov

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,11 @@
5454
#if (meshcam_file>0)
5555
// get the file name
5656
#if (use_distortion=0)
57-
#declare prefix="meshcam-pinhole_";
57+
#declare Prefix="meshcam-pinhole_";
5858
#else
59-
#declare prefix="meshcam-lens_";
59+
#declare Prefix="meshcam-lens_";
6060
#end
61-
#declare mesh_file=concat(concat(concat(concat(concat(concat(prefix,str(image_width,0,0)),"x"),str(image_height,0,0)),"-angle_"),str(c_angle,0,0)),".inc");
61+
#declare mesh_file=concat(concat(concat(concat(concat(concat(Prefix,str(image_width,0,0)),"x"),str(image_height,0,0)),"-angle_"),str(c_angle,0,0)),".inc");
6262
#else
6363
// ..wich should be empty to turn the mesh file off
6464
#declare mesh_file="";

libraries/boost/boost/algorithm/algorithm.hpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
#ifndef BOOST_ALGORITHM_HPP
1818
#define BOOST_ALGORITHM_HPP
1919

20+
#include <functional> // for plus and multiplies
21+
2022
#include <boost/utility/enable_if.hpp> // for boost::disable_if
2123
#include <boost/type_traits/is_integral.hpp>
2224

@@ -56,7 +58,7 @@ power (T x, Integer n) {
5658

5759
/// \fn power ( T x, Integer n, Operation op )
5860
/// \return the value "x" raised to the power "n"
59-
/// using the operaton "op".
61+
/// using the operation "op".
6062
///
6163
/// \param x The value to be exponentiated
6264
/// \param n The exponent (must be >= 0)

libraries/boost/boost/algorithm/cxx11/all_of.hpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
#ifndef BOOST_ALGORITHM_ALL_OF_HPP
1313
#define BOOST_ALGORITHM_ALL_OF_HPP
1414

15-
#include <algorithm> // for std::all_of, if available
1615
#include <boost/range/begin.hpp>
1716
#include <boost/range/end.hpp>
1817

@@ -27,8 +26,6 @@ namespace boost { namespace algorithm {
2726
/// \param p A predicate for testing the elements of the sequence
2827
///
2928
/// \note This function is part of the C++2011 standard library.
30-
/// We will use the standard one if it is available,
31-
/// otherwise we have our own implementation.
3229
template<typename InputIterator, typename Predicate>
3330
bool all_of ( InputIterator first, InputIterator last, Predicate p )
3431
{

libraries/boost/boost/algorithm/cxx11/any_of.hpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
#ifndef BOOST_ALGORITHM_ANY_OF_HPP
1515
#define BOOST_ALGORITHM_ANY_OF_HPP
1616

17-
#include <algorithm> // for std::any_of, if available
1817
#include <boost/range/begin.hpp>
1918
#include <boost/range/end.hpp>
2019

libraries/boost/boost/algorithm/cxx11/copy_if.hpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
#ifndef BOOST_ALGORITHM_COPY_IF_HPP
1313
#define BOOST_ALGORITHM_COPY_IF_HPP
1414

15-
#include <algorithm> // for std::copy_if, if available
15+
#include <utility> // for std::pair, std::make_pair
1616
#include <boost/range/begin.hpp>
1717
#include <boost/range/end.hpp>
1818

@@ -28,8 +28,6 @@ namespace boost { namespace algorithm {
2828
/// \param result An output iterator to write the results into
2929
/// \param p A predicate for testing the elements of the range
3030
/// \note This function is part of the C++2011 standard library.
31-
/// We will use the standard one if it is available,
32-
/// otherwise we have our own implementation.
3331
template<typename InputIterator, typename OutputIterator, typename Predicate>
3432
OutputIterator copy_if ( InputIterator first, InputIterator last, OutputIterator result, Predicate p )
3533
{

libraries/boost/boost/algorithm/cxx11/copy_n.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212
#ifndef BOOST_ALGORITHM_COPY_N_HPP
1313
#define BOOST_ALGORITHM_COPY_N_HPP
1414

15-
#include <algorithm> // for std::copy_n, if available
16-
1715
namespace boost { namespace algorithm {
1816

1917
/// \fn copy_n ( InputIterator first, Size n, OutputIterator result )
@@ -25,8 +23,6 @@ namespace boost { namespace algorithm {
2523
/// \param n The number of elements to copy
2624
/// \param result An output iterator to write the results into
2725
/// \note This function is part of the C++2011 standard library.
28-
/// We will use the standard one if it is available,
29-
/// otherwise we have our own implementation.
3026
template <typename InputIterator, typename Size, typename OutputIterator>
3127
OutputIterator copy_n ( InputIterator first, Size n, OutputIterator result )
3228
{

libraries/boost/boost/algorithm/cxx11/find_if_not.hpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212
#ifndef BOOST_ALGORITHM_FIND_IF_NOT_HPP
1313
#define BOOST_ALGORITHM_FIND_IF_NOT_HPP
1414

15-
#include <algorithm> // for std::find_if_not, if it exists
16-
1715
#include <boost/range/begin.hpp>
1816
#include <boost/range/end.hpp>
1917

@@ -27,8 +25,6 @@ namespace boost { namespace algorithm {
2725
/// \param last One past the end of the input sequence
2826
/// \param p A predicate for testing the elements of the range
2927
/// \note This function is part of the C++2011 standard library.
30-
/// We will use the standard one if it is available,
31-
/// otherwise we have our own implementation.
3228
template<typename InputIterator, typename Predicate>
3329
InputIterator find_if_not ( InputIterator first, InputIterator last, Predicate p )
3430
{

0 commit comments

Comments
 (0)