[RQt-devel] New crash

Tengfei Yin yintengfei at gmail.com
Wed Apr 7 20:59:27 CEST 2010


Hi Michael,

Thank you so much for your help and letting me know this. Actually I am not
quite familiar with Moc type stuff, I have not come across such an message
so far, since I just started working with qtinterface.

Thanks again!

Tengfei

On Wed, Apr 7, 2010 at 1:46 PM, Michael Lawrence
<lawrence.michael at gene.com>wrote:

> Yea I know about the unhandled Moc type stuff. Clearing those up is going
> to be a pain, since the Smoke generator resolves typedefs (this is optional,
> but we already rely on it) whereas Qt's metaobject compiler (MOC) uses the
> typedef names.
>
> On Wed, Apr 7, 2010 at 11:43 AM, Tengfei Yin <yintengfei at gmail.com> wrote:
>
>> Hi Michael,
>>
>> Thanks, latest version works like a charm on canvas demo in qtpaint. No
>> crash anymore.
>> For qrepl(), I got the following message, anyway no crash anymore
>>
>> > library(qtutils)
>> Loading required package: qtbase
>> > foo=qrepl()
>> Cannot handle Moc type 'qreal'
>>
>> debug(qrepl) gave me
>>
>> Browse[2]> n
>> debug: ined1 <- qeditor(rsyntax = TRUE, richtext = TRUE)
>> Browse[2]> n
>> Cannot handle Moc type 'qreal'
>>
>> debug: ined1$setCurrentFont(font)
>> Browse[2]> n
>>
>> Thanks
>>
>> Regards
>>
>> Tengfei
>>
>>
>>
>> On Wed, Apr 7, 2010 at 11:18 AM, Michael Lawrence <
>> lawrence.michael at gene.com> wrote:
>>
>>>
>>>
>>> On Tue, Apr 6, 2010 at 10:30 PM, Tengfei Yin <yintengfei at gmail.com>wrote:
>>>
>>>> Hi,
>>>>
>>>> I have the same crash here
>>>> my system ubuntu 9.10 64 bit, qt 4.5
>>>> my sessionInfo()
>>>>
>>>> > sessionInfo()
>>>> R version 2.10.1 (2009-12-14)
>>>>  x86_64-pc-linux-gnu
>>>>
>>>> locale:
>>>>  [1] LC_CTYPE=zh_CN.UTF-8       LC_NUMERIC=C
>>>>  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
>>>>  [5] LC_MONETARY=C              LC_MESSAGES=en_US.UTF-8
>>>>  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
>>>>  [9] LC_ADDRESS=C               LC_TELEPHONE=C
>>>> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
>>>>
>>>> attached base packages:
>>>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>>>
>>>>
>>>> I have another crash caused by call demo('canvas','qtpaint'), here is
>>>> running message and the trace back version,
>>>>
>>>> > library(qtpaint)
>>>> > demo('canvas','qtpaint')
>>>>
>>>>
>>>> demo(canvas)
>>>>  ---- ~~~~~~
>>>>
>>>> Type  <Return> to start :
>>>>
>>>> > ## tests/demonstrations for the interactive canvas
>>>> >
>>>> > library(qtpaint)
>>>>
>>>> > options(warn=2)
>>>>
>>>> > options(error=recover)
>>>>
>>>> > circle <- qglyphCircle()
>>>>
>>>> > n <- 1000
>>>>
>>>> > x <- rnorm(n, 50, 25)
>>>>
>>>> > y <- rnorm(n, 50, 25)
>>>>
>>>> > df <- data.frame(X = x, Y = y)
>>>>
>>>> > ##data(mtcars)
>>>> > ##df <- mtcars[,c("mpg", "hp")]
>>>> >
>>>> > ##data(iris)
>>>> > ##df <- iris
>>>> > fill <- col2rgb(rgb(1, seq(0, 1, length=nrow(df)), 0, 0.5), TRUE)
>>>>
>>>> > ##fill <- col2rgb(rgb(1, 0, 0, 0.5), TRUE)
>>>> > ##fill <- rep("red", nrow(df))
>>>> > scatterplot <- function(item, painter) {
>>>> +   qstrokeColor(painter) <- NA
>>>> +   qfillColor(painter) <- fill
>>>> +   ##qantialias(painter) <- FALSE
>>>> +   ##qdrawText(painter, "x", df[,1], df[,2])
>>>> +   ##qdrawPoint(painter, df[,1], df[,2], stroke = fill)
>>>> +   qdrawGlyph(painter, circle, df[,1], df[,2], fill = fill)
>>>> + }
>>>>
>>>> > labeled <- rep(FALSE, nrow(df))
>>>>
>>>> > labeler <- function(item, painter) {
>>>>  +   mat <- qdeviceTransform(painter)
>>>> +   off <- qmap(mat, c(5, 5)) - qmap(mat, c(0, 0))
>>>> +   df <- df[labeled,]
>>>> +   qdrawText(painter, rownames(df), df[,1]+off[1], df[,2]+off[2],
>>>> "left",
>>>> +             "bottom")
>>>> + }
>>>>
>>>> > margin <- 5
>>>>
>>>> > adjust <- c(margin, -margin)
>>>>
>>>> > adjustPoint <- Qt$QPointF(margin, margin)
>>>>
>>>> > axes <- function(item, painter) {
>>>> +   qfont(painter) <- qfont(pointsize=12)
>>>> +   pos <- as.matrix(item$geometry) + adjust
>>>> +   qdrawText(painter, colnames(df)[1], pos[2], pos[4], "right",
>>>> "bottom")
>>>> +   qdrawText(painter, colnames(df)[2], pos[1], pos[3], "left", "top")
>>>> + }
>>>>
>>>> > pointAdder <- function(item, event) {
>>>> +   df <<- rbind(df, event$pos())
>>>> +   qupdate(scene)
>>>> + }
>>>>
>>>> > pointIdentifier <- function(item, event) {
>>>> +   off <- 20
>>>> +   rect <- qrect(0, 0, off*2, off*2)
>>>> +   mat <- item$deviceTransform(event)$inverted()
>>>> +   rect <- mat$mapRect(rect)
>>>> +   pos <- event$pos()
>>>> +   rect$moveCenter(pos)
>>>> +   hits <- item$primitives(rect)
>>>> +   hitmat <- as.matrix(df[hits,])
>>>> +   posmat <- matrix(pos, ncol=2)
>>>> +   labeled <<- rep(FALSE, nrow(df))
>>>> +   labeled[hits][Biobase::matchpt(posmat, hitmat)[,1]] <<- TRUE
>>>> +   qupdate(labels)
>>>> + }
>>>>
>>>> > boundsPainter <- function(item, painter) {
>>>> +   lims <- dim(item)
>>>> +   qstrokeColor(painter) <- "red"
>>>> +   qdrawRect(painter, lims[1,1], lims[1,2], lims[2,1], lims[2,2])
>>>> + }
>>>>
>>>> > scene <- qscene()
>>>> Error in qinvokeStatic(cl, basename, ...) :
>>>>   Unable to disambiguate method QGraphicsScene::QGraphicsScene
>>>>
>>>>
>>> This bug was fixed yesterday in svn.
>>>
>>>
>>>> #################another trace back version #############
>>>>
>>>> > gctorture(TRUE)
>>>> > demo('canvas','qtpaint')
>>>>
>>>>
>>>> demo(canvas)
>>>>  ---- ~~~~~~
>>>>
>>>> Type  <Return> to start :
>>>>
>>>> > ## tests/demonstrations for the interactive canvas
>>>> >
>>>> > library(qtpaint)
>>>>
>>>> > options(warn=2)
>>>>
>>>> > options(error=recover)
>>>>
>>>> > circle <- qglyphCircle()
>>>>
>>>>  *** caught segfault ***
>>>> address (nil), cause 'unknown'
>>>>
>>>>
>>> This seems to have the same cause as the bug reported by Deepayan. The
>>> "fix" I made to Smoke last week to fix the bug reported by Deepayan in
>>> January (I think we need numbers for these) was actually not a fix. It
>>> resulted in a crash whenever a non-Smoke-derived object was deleted. I've
>>> found a new work-around (inside qtbase this time), which fixes the old bug,
>>> without causing this problem. Try the latest svn.
>>>
>>> Michael
>>>
>>>
>>>> Traceback:
>>>>  1: glyph$addEllipse
>>>>  2: qglyphCircle()
>>>>  3: eval.with.vis(expr, envir, enclos)
>>>>  4: eval.with.vis(ei, envir)
>>>>  5: source(available, echo = echo, max.deparse.length = Inf, keep.source
>>>> = TRUE)
>>>>  6: demo("canvas", "qtpaint")
>>>>
>>>> Possible actions:
>>>> 1: abort (with core dump, if enabled)
>>>> 2: normal R exit
>>>> 3: exit R without saving workspace
>>>> 4: exit R saving workspace
>>>>
>>>>
>>>> Regards
>>>>
>>>> Tengfei
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Apr 7, 2010 at 12:11 AM, Deepayan Sarkar <
>>>> deepayan.sarkar at gmail.com> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I haven't had a chance to investigate this closely, but I'm
>>>>> consistently getting the following segfault. Can anyone reproduce?
>>>>>
>>>>> -Deepayan
>>>>>
>>>>>
>>>>> > library(qtutils)
>>>>> > foo <- qrepl()
>>>>> Cannot handle Moc type 'qreal'
>>>>>
>>>>>
>>>>>  *** caught segfault ***
>>>>> address 0x100000002, cause 'memory not mapped'
>>>>>
>>>>> Possible actions:
>>>>> 1: abort (with core dump, if enabled)
>>>>> 2: normal R exit
>>>>> 3: exit R without saving workspace
>>>>> 4: exit R saving workspace
>>>>> _______________________________________________
>>>>> Qtinterfaces-devel mailing list
>>>>> Qtinterfaces-devel at lists.r-forge.r-project.org
>>>>>
>>>>> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/qtinterfaces-devel
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Tengfei Yin
>>>> MCDB PhD student
>>>> 1620 Howe Hall, 2274,
>>>> Iowa State University
>>>> Ames, IA,50011-2274
>>>> Homepage: www.tengfei.name
>>>> English Blog: www.tengfei.name/en
>>>> Chinese Blog: www.tengfei.name/ch
>>>>
>>>> _______________________________________________
>>>> Qtinterfaces-devel mailing list
>>>> Qtinterfaces-devel at lists.r-forge.r-project.org
>>>>
>>>> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/qtinterfaces-devel
>>>>
>>>>
>>>
>>
>>
>> --
>> Tengfei Yin
>> MCDB PhD student
>> 1620 Howe Hall, 2274,
>> Iowa State University
>> Ames, IA,50011-2274
>> Homepage: www.tengfei.name
>> English Blog: www.tengfei.name/en
>> Chinese Blog: www.tengfei.name/ch
>>
>
>


-- 
Tengfei Yin
MCDB PhD student
1620 Howe Hall, 2274,
Iowa State University
Ames, IA,50011-2274
Homepage: www.tengfei.name
English Blog: www.tengfei.name/en
Chinese Blog: www.tengfei.name/ch
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.r-forge.r-project.org/pipermail/qtinterfaces-devel/attachments/20100407/c276089c/attachment-0001.htm 


More information about the Qtinterfaces-devel mailing list