Blender Git Commits

Blender Git "master" branch commits.

Page: 551 / 5574

October 5, 2020, 00:17 (GMT)
Fix T80282: Playback start delayed with AV sync

If current frame is set to before start frame, with AV sync there is
delay when playback is started.

Tag scene with ID_RECALC_AUDIO_SEEK, so audio playback starts from
correct position.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8809
October 4, 2020, 23:07 (GMT)
Cleanup: simplify tempdir_session_create

Remove the need for a temporary allocated path.
October 4, 2020, 22:43 (GMT)
Correct last commit (where_is_temp refactor)

Changes didn't account the case when mkdtemp failed.
Previously the copying the string wasn't needed in this case.
October 4, 2020, 16:04 (GMT)
Cleanup: refactor where_is_temp

Functionality was hard to follow as the meaning of fullname
depended on basename being NULL or not.

- where_is_temp is now only responsible for finding the temp directory.
- Split out tempdir_session_create into it's own function
that wraps mkdtemp.
- Rename basename to tempdir, fullname to tempdir_session.
October 4, 2020, 14:56 (GMT)
Cleanup: remove outdated comment

Should have been removed in b36a05bb7e794335e3415594c41d3986cdc815e8,
when Python was started after reading the preferences.
October 4, 2020, 14:29 (GMT)
Preferences: use the users temp directory in background mode

This choice was made when preferences were not read in background mode,
so the temp dir needed to be initialized with something.
See bc9848f7e67c3e695403179f8bcdb78b0e5764a3.

Now preferences are always read there is no reason to ignore this
particular preference in background mode.

Anyone wanting to do background renders that ignore their preferences
can run with factory startup.
October 4, 2020, 13:55 (GMT)
Cleanup: BKE_appdir store static values in a struct, clarify names

Avoid multiple static variables with odd names,
instead keep them all in one struct, expand their names for clarity.
October 4, 2020, 11:23 (GMT)
Fix error in last commit printing NULL strings

While this works with GCC, printing NULL strings is undefined behavior.
October 4, 2020, 11:15 (GMT)
BKE_appdir: log details about path lookups

These were printf's, disabled by a define that could be uncommented.

Use logging since this can be useful when investigating any issue
with paths not being found at the expected location.

Without this any problem finding app-templates, Python's installation,
icons ... etc are quite difficult to troubleshoot especially on systems
without access to system-call tracing.

To use this run:
blender --log "bke.appdir" --log-level 3
October 4, 2020, 11:15 (GMT)
Fix color-management ignoring the data-path command line value

Initialize ImBuf (and color-management) after passing arguments
that set environment variables such as `--env-system-datapath`

This also fixes a bug where BKE_appdir logging failed since it was
called before the `--log` argument was passed.

Add asserts so this doesn't happen again.
October 4, 2020, 11:12 (GMT)
Cleanup: clarify names in appdir

- ver -> version.
- env -> env_path.
October 3, 2020, 22:33 (GMT)
Cleanup: BKE_appdir left paths set even when not found

Internally appdir functions would test if a path exists,
returning false if it doesn't, leaving the string set instead
of clearing it.

This is error prone as invalid paths could be used accidentally.

Since BKE_appdir_folder_id_user_notest & BKE_appdir_folder_id_version
depend on this, add a 'check_is_dir' argument so the path can be used
even when the directory can't be found.
Revision d8c3ad6 by Julian Eisel
October 3, 2020, 20:15 (GMT)
Cleanup: Remove duplicated View2D pan polling logic

Same as 21fc4ae20692, but for view panning this time. Also had to set the poll
callbacks still in this case.
Revision 806edf1 by Julian Eisel
October 3, 2020, 19:51 (GMT)
Revert part of previous commit

The change to the `poll()` callback was actually incorrect. But also
reduandant, since the function is actually already executed in the operator.
Revision 9668fc5 by Julian Eisel
October 3, 2020, 19:30 (GMT)
Fix compile error when compiling with WITH_INPUT_NDOF after View2D changes

Actually, fixes compile error and an incorrect poll.

Caused by 21fc4ae20692 and 3a1cf838ca09.
The poll has to perfrom the `view_zoom_poll()` logic to ensure correct context.
Revision 05bf109 by Julian Eisel
October 3, 2020, 17:01 (GMT)
Fix error in previous commit...
Revision 27bcbf1 by Julian Eisel
October 3, 2020, 16:56 (GMT)
Fix possible un-initialized variable use in UI code

Uncovered by a4aa94c41cb7. Before that, it would actually be a possible `NULL`
pointer dereference.

It would happen if a `UILayout.prop()` was placed with the `full_event` option
set to `True` (or the C equivalent) for a non keymap-item property.
Now this the `full_event` option is ignored then with a warning print.
Revision 3a1cf83 by Julian Eisel
October 3, 2020, 16:34 (GMT)
Fix issues with calling View2D zoom operators in an `EXEC` context

Multiple related issues:
* `view_zoomdrag_exec()` required `view_zoomdrag_init()` to be called first to
set up data. Can now easily be done in the `_exec()` function as well though.
* Because of that the operators could not be called in an `EXEC_` context (e.g.
`EXEC_REGION_WIN`).
* With "Zoom to Mouse Position" enabled, zooming from a menu or script would
zoom to the mouse position. That should only happen if the operators are
called directly in the editor.
Revision eacaebe by Julian Eisel
October 3, 2020, 16:34 (GMT)
Cleanup: Remove redundant View2D operator poll check

The poll would already be executed as operator callback, this check was
redundant. Also see previous commit.
Revision 21fc4ae by Julian Eisel
October 3, 2020, 16:34 (GMT)
Cleanup: Remove duplicated View2D zoom polling logic

`view_zoomdrag_init()` would perform a number of sanity checks that
`view_zoom_poll()` already executed. The design of operators forsees that
(non-expensive) context sanity checks are done by the `poll()` callbacks, and
the execution callbacks can then just assume that happened. No reason to be
overly pedantic, we don't do that elsewhere either.

Note that this code is from the earliest days of an operator design. So it's
not surprising that it wasn't using the design "properly".
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021