Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

Release 16.01 for Mac

<< < (5/7) > >>

dkulp:

--- Quote from: MortenMacFly on February 06, 2016, 12:48:40 pm ---...wrt the patch you kindly provided: The method:
m_Bitmap->CreateScaled
...is not available on wx2.8.x. Therefore the build will be broken with that version. You'll need to wrap this into a wxCHECK_VERSION or alike.

--- End quote ---

Personally, I would suggest requiring 3.0.x for the Mac.   There are so many parts of wxWidgets that will cause awful behavior or crashes with 2.8.x on the Mac, particularly with Yosemite or newer.   Without my fixes to 3.0.x, the Retina support is pretty bad as well, particularly for wxSmith.  :(


MortenMacFly:

--- Quote from: dkulp on February 06, 2016, 02:51:06 pm ---Personally, I would suggest requiring 3.0.x for the Mac.

--- End quote ---
I have not problem with that, but as long as we don't have a stable wx3.0 for all platforms we need to consider using wx28 on other platforms as base.

If you wrap this code into

--- Code: (cpp) ---#ifdef wxCHECK_VERSION(3, 0, 0)
 ... // new code
#else
 ... // old code
#endif
--- End code ---

All is fine.

We surely target supporting wx3 for the next release.

Easior Lars:

--- Quote from: MortenMacFly on February 06, 2016, 12:39:26 pm ---...where?! :-)

--- End quote ---

It is at https://fedorapeople.org/~easior/CodeBlocks-Mac-16.01-r2-debug.tar.bz2 with debug symbols.


--- Quote ---Did you strip the sources? Because all lines are missing. For the development on the Mac you should not strip anything. This will help to track down the errors.

--- End quote ---
Ok. I have changed the value of variable CB_RELEASE_TYPE from -O2 to -g and temporally comment all strip scripts in update30.

All cbp files for Mac OS, I think, work fine. It should be committed to CB source tree. I have abandoned patch for update30 since there are there places to hold update scripts, i.e CB_DIR/src, PLUGIN_DIR/ and cbp file for plugin.

There is also some bug for wxsmith (see the second attachment).

Easior Lars:

--- Quote from: MortenMacFly on February 06, 2016, 12:39:26 pm ---Did you strip the sources? Because all lines are missing. For the development on the Mac you should not strip anything. This will help to track down the errors.

--- End quote ---

CB has crashed again. It complained that

--- Code: (xml) ---<?xml version="1.0" encoding="UTF-8"?>
<report version="1.0" kind="exception">
  <system description="Mac OS X (Darwin 14.5.0 x86_64)"/>
  <stack>
    <frame level="0" function="wxDebugReport::AddContext(wxDebugReport::Context) " offset="00000000" file="debugrpt.cpp" line="49"/>
    <frame level="1" function="wxDebugReport::AddAll(wxDebugReport::Context) " offset="00000000" file="debugrpt.cpp" line="35"/>
    <frame level="2" function="CodeBlocksApp::OnFatalException() " offset="00000000" file="app.cpp" line="88"/>
    <frame level="3" function="wxFatalSignalHandler " offset="00000000" file="utilsunx.cpp" line="139"/>
    <frame level="4" function="_sigtramp " offset="00000000"/>
    <frame level="5" function="_sigtramp " offset="00000000"/>
    <frame level="6" function="CallTip::CallTipCancel() " offset="00000000" file="CallTip.cxx" line="30"/>
    <frame level="7" function="ScintillaBase::WndProc(unsigned int, unsigned long, long) " offset="00000000" file="ScintillaBase.cxx" line="92"/>
    <frame level="8" function="ScintillaWX::WndProc(unsigned int, unsigned long, long) " offset="00000000" file="ScintillaWX.cpp" line="94"/>
    <frame level="9" function="wxScintilla::SendMsg(unsigned int, unsigned long, long) const " offset="00000000" file="wxscintilla.cpp" line="26"/>
    <frame level="10" function="wxScintilla::CallTipCancel() " offset="00000000" file="wxscintilla.cpp" line="200"/>
    <frame level="11" function="cbStyledTextCtrl::CallTipCancel() " offset="00000000" file="cbstyledtextctrl.cpp" line="33"/>
    <frame level="12" function="cbStyledTextCtrl::OnKillFocus(wxFocusEvent&amp;) " offset="00000000" file="cbstyledtextctrl.cpp" line="8"/>
    <frame level="13" function="wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&amp;), wxEvent&amp;) const " offset="00000000" file="appbase.cpp" line="61"/>
    <frame level="14" function="wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&amp;, wxEvent&amp;) const " offset="00000000" file="appbase.cpp" line="62"/>
    <frame level="15" function="wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&amp;, wxEvtHandler*, wxEvent&amp;) " offset="00000000" file="event.cpp" line="139"/>
    <frame level="16" function="wxEventHashTable::HandleEvent(wxEvent&amp;, wxEvtHandler*) " offset="00000000" file="event.cpp" line="99"/>
    <frame level="17" function="wxEvtHandler::TryHereOnly(wxEvent&amp;) " offset="00000000" file="event.cpp" line="158"/>
    <frame level="18" function="wxEvtHandler::TryBeforeAndHere(wxEvent&amp;) " offset="00000000" file="event.h" line="367"/>
    <frame level="19" function="wxEvtHandler::ProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="148"/>
    <frame level="20" function="wxEvtHandler::DoTryChain(wxEvent&amp;) " offset="00000000" file="event.cpp" line="155"/>
    <frame level="21" function="wxEvtHandler::ProcessEventLocally(wxEvent&amp;) " offset="00000000" file="event.cpp" line="152"/>
    <frame level="22" function="wxEvtHandler::ProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="149"/>
    <frame level="23" function="wxEvtHandler::SafelyProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="161"/>
    <frame level="24" function="wxWindowBase::HandleWindowEvent(wxEvent&amp;) const " offset="00000000" file="wincmn.cpp" line="152"/>
    <frame level="25" function="wxWidgetCocoaImpl::DoNotifyFocusEvent(bool, wxWidgetImpl*) " offset="00000000" file="window.mm" line="287"/>
    <frame level="26" function="wxWidgetCocoaImpl::DoNotifyFocusLost() " offset="00000000" file="window.mm" line="283"/>
    <frame level="27" function="wxWidgetCocoaImpl::resignFirstResponder(NSView*, void*) " offset="00000000" file="window.mm" line="153"/>
    <frame level="28" function="wxOSX_resignFirstResponder(NSView*, objc_selector*) " offset="00000000" file="window.mm" line="105"/>
    <frame level="29" function="-[NSWindow makeFirstResponder:] " offset="00000000"/>
    <frame level="30" function="-[wxNSWindow makeFirstResponder:] " offset="00000000" file="nonownedwnd.mm" line="21"/>
    <frame level="31" function="-[wxNonOwnedWindowController windowDidResignKey:] " offset="00000000" file="nonownedwnd.mm" line="50"/>
    <frame level="32" function="__CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ " offset="00000000"/>
    <frame level="33" function="_CFXNotificationPost " offset="00000000"/>
    <frame level="34" function="-[NSNotificationCenter postNotificationName:object:userInfo:] " offset="00000000"/>
    <frame level="35" function="-[NSWindow resignKeyWindow] " offset="00000000"/>
    <frame level="36" function="-[NSWindow _changeKeyAndMainLimitedOK:] " offset="00000000"/>
    <frame level="37" function="-[NSWindow _makeKeyRegardlessOfVisibility] " offset="00000000"/>
    <frame level="38" function="-[NSWindow makeKeyAndOrderFront:] " offset="00000000"/>
    <frame level="39" function="wxNonOwnedWindowCocoaImpl::Show(bool) " offset="00000000" file="nonownedwnd.mm" line="77"/>
    <frame level="40" function="wxNonOwnedWindow::Show(bool) " offset="00000000" file="nonownedwnd_osx.cpp" line="37"/>
    <frame level="41" function="Window::Show(bool) " offset="00000000" file="PlatWX.cpp" line="80"/>
    <frame level="42" function="ScintillaWX::WndProc(unsigned int, unsigned long, long) " offset="00000000" file="ScintillaWX.cpp" line="92"/>
    <frame level="43" function="wxScintilla::SendMsg(unsigned int, unsigned long, long) const " offset="00000000" file="wxscintilla.cpp" line="26"/>
    <frame level="44" function="wxScintilla::CallTipShow(int, wxString const&amp;) " offset="00000000" file="wxscintilla.cpp" line="200"/>
    <frame level="45" function="CCManager::DoShowTips(std::__1::vector&lt;wxString, std::__1::allocator&lt;wxString&gt; &gt; const&amp;, cbStyledTextCtrl*, int, int, int, int) " offset="00000000" file="ccmanager.cpp" line="137"/>
    <frame level="46" function="CCManager::OnEditorTooltip(CodeBlocksEvent&amp;) " offset="00000000" file="ccmanager.cpp" line="71"/>
    <frame level="47" function="cbEventFunctor&lt;CCManager, CodeBlocksEvent&gt;::Call(CodeBlocksEvent&amp;) " offset="00000000" file="cbfunctor.h" line="4"/>
    <frame level="48" function="Manager::ProcessEvent(CodeBlocksEvent&amp;) " offset="00000000" file="manager.cpp" line="26"/>
    <frame level="49" function="PluginManager::NotifyPlugins(CodeBlocksEvent&amp;) " offset="00000000" file="pluginmanager.cpp" line="145"/>
    <frame level="50" function="cbEditor::NotifyPlugins(int, int, wxString const&amp;, int, int) " offset="00000000" file="cbeditor.cpp" line="82"/>
    <frame level="51" function="cbEditor::OnEditorDwellStart(wxScintillaEvent&amp;) " offset="00000000" file="cbeditor.cpp" line="327"/>
    <frame level="52" function="wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&amp;), wxEvent&amp;) const " offset="00000000" file="appbase.cpp" line="61"/>
    <frame level="53" function="wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&amp;, wxEvent&amp;) const " offset="00000000" file="appbase.cpp" line="62"/>
    <frame level="54" function="wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&amp;, wxEvtHandler*, wxEvent&amp;) " offset="00000000" file="event.cpp" line="139"/>
    <frame level="55" function="wxEvtHandler::SearchDynamicEventTable(wxEvent&amp;) " offset="00000000" file="event.cpp" line="174"/>
    <frame level="56" function="wxEvtHandler::TryHereOnly(wxEvent&amp;) " offset="00000000" file="event.cpp" line="158"/>
    <frame level="57" function="wxEvtHandler::TryBeforeAndHere(wxEvent&amp;) " offset="00000000" file="event.h" line="367"/>
    <frame level="58" function="wxEvtHandler::ProcessEventLocally(wxEvent&amp;) " offset="00000000" file="event.cpp" line="152"/>
    <frame level="59" function="wxEvtHandler::ProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="149"/>
    <frame level="60" function="wxWindowBase::TryAfter(wxEvent&amp;) " offset="00000000" file="wincmn.cpp" line="342"/>
    <frame level="61" function="wxEvtHandler::TryAfter(wxEvent&amp;) " offset="00000000" file="event.cpp" line="144"/>
    <frame level="62" function="wxEvtHandler::ProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="150"/>
    <frame level="63" function="wxScintilla::NotifyParent(SCNotification*) " offset="00000000" file="wxscintilla.cpp" line="570"/>
    <frame level="64" function="ScintillaWX::NotifyParent(SCNotification) " offset="00000000" file="ScintillaWX.cpp" line="54"/>
    <frame level="65" function="Editor::NotifyDwelling(Point, bool) " offset="00000000" file="Editor.cxx" line="240"/>
    <frame level="66" function="Editor::TickFor(Editor::TickReason) " offset="00000000" file="Editor.cxx" line="465"/>
    <frame level="67" function="ScintillaWX::DoOnTimer(wxTimerEvent&amp;) " offset="00000000" file="ScintillaWX.cpp" line="132"/>
    <frame level="68" function="wxScintilla::OnTimer(wxTimerEvent&amp;) " offset="00000000" file="wxscintilla.cpp" line="550"/>
    <frame level="69" function="wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&amp;), wxEvent&amp;) const " offset="00000000" file="appbase.cpp" line="61"/>
    <frame level="70" function="wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&amp;, wxEvent&amp;) const " offset="00000000" file="appbase.cpp" line="62"/>
    <frame level="71" function="wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&amp;, wxEvtHandler*, wxEvent&amp;) " offset="00000000" file="event.cpp" line="139"/>
    <frame level="72" function="wxEvtHandler::SearchDynamicEventTable(wxEvent&amp;) " offset="00000000" file="event.cpp" line="174"/>
    <frame level="73" function="wxEvtHandler::TryHereOnly(wxEvent&amp;) " offset="00000000" file="event.cpp" line="158"/>
    <frame level="74" function="wxEvtHandler::TryBeforeAndHere(wxEvent&amp;) " offset="00000000" file="event.h" line="367"/>
    <frame level="75" function="wxEvtHandler::ProcessEventLocally(wxEvent&amp;) " offset="00000000" file="event.cpp" line="152"/>
    <frame level="76" function="wxEvtHandler::ProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="149"/>
    <frame level="77" function="wxEvtHandler::SafelyProcessEvent(wxEvent&amp;) " offset="00000000" file="event.cpp" line="161"/>
    <frame level="78" function="wxTimerImpl::SendEvent() " offset="00000000" file="timerimpl.cpp" line="5"/>
    <frame level="79" function="wxTimer::Notify() " offset="00000000" file="timercmn.cpp" line="10"/>
    <frame level="80" function="wxTimerImpl::Notify() " offset="00000000" file="timer.h" line="4"/>
    <frame level="81" function="wxProcessTimer(__CFRunLoopTimer*, void*) " offset="00000000" file="timer.cpp" line="3"/>
    <frame level="82" function="__CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ " offset="00000000"/>
    <frame level="83" function="__CFRunLoopDoTimer " offset="00000000"/>
    <frame level="84" function="__CFRunLoopDoTimers " offset="00000000"/>
    <frame level="85" function="__CFRunLoopRun " offset="00000000"/>
    <frame level="86" function="CFRunLoopRunSpecific " offset="00000000"/>
    <frame level="87" function="RunCurrentEventLoopInMode " offset="00000000"/>
    <frame level="88" function="ReceiveNextEventCommon " offset="00000000"/>
    <frame level="89" function="_BlockUntilNextEventMatchingListInModeWithFilter " offset="00000000"/>
    <frame level="90" function="_DPSNextEvent " offset="00000000"/>
    <frame level="91" function="-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] " offset="00000000"/>
    <frame level="92" function="-[NSApplication run] " offset="00000000"/>
    <frame level="93" function="wxGUIEventLoop::OSXDoRun() " offset="00000000" file="evtloop.mm" line="30"/>
    <frame level="94" function="wxCFEventLoop::DoRun() " offset="00000000" file="evtloop_cf.cpp" line="34"/>
    <frame level="95" function="wxEventLoopBase::Run() " offset="00000000" file="evtloopcmn.cpp" line="7"/>
    <frame level="96" function="wxAppConsoleBase::MainLoop() " offset="00000000" file="appbase.cpp" line="33"/>
    <frame level="97" function="wxAppConsoleBase::OnRun() " offset="00000000" file="appbase.cpp" line="25"/>
    <frame level="98" function="wxAppBase::OnRun() " offset="00000000" file="appcmn.cpp" line="30"/>
    <frame level="99" function="wxApp::OnRun() " offset="00000000" file="app.cpp" line="92"/>
    <frame level="100" function="CodeBlocksApp::OnRun() " offset="00000000" file="app.cpp" line="85"/>
    <frame level="101" function="wxEntry(int&amp;, wchar_t**) " offset="00000000" file="init.cpp" line="50"/>
    <frame level="102" function="wxEntry(int&amp;, char**) " offset="00000000" file="init.cpp" line="51"/>
    <frame level="103" function="main " offset="00000000" file="app.cpp" line="32"/>
    <frame level="104" function="start " offset="00000000"/>
  </stack>
</report>

--- End code ---
Any clue to debug?

oBFusCATed:
Does it happen every time or is it just some random event?
You can try to start cb under lldb/gdb and wait for the crash to happen.
Then inspect the variables.

The line numbers in the crash report are totally wrong (the last character is removed).

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version