小编djb*_*djb的帖子

Valgrind没有显示行号,尽管-g标志(在Ubuntu 11.10/VirtualBox上)

我正在关注'学习C艰难之路',特别是关于Valgrind的章节.本章给出了一个故意错误的程序来展示Valgrind的工作原理.

当我在Valgrind下运行练习时,我没有在我的堆栈跟踪中获得行号,只是'(在主要下面)'的错误.

肯定用-g标志编译.

我的Valgrind输出如下:

djb@twin:~/projects/Learning/C$ valgrind ./ex4
==5190== Memcheck, a memory error detector
==5190== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==5190== Using Valgrind-3.6.1-Debian and LibVEX; rerun with -h for copyright info
==5190== Command: ./ex4
==5190== 
==5190== Use of uninitialised value of size 4
==5190==    at 0x4078B2B: _itoa_word (_itoa.c:195)
==5190==    by 0x407CE55: vfprintf (vfprintf.c:1619)
==5190==    by 0x40831DE: printf (printf.c:35)
==5190==    by 0x4052112: (below main) (libc-start.c:226)
==5190== 
==5190== Conditional jump or move depends …
Run Code Online (Sandbox Code Playgroud)

c valgrind

64
推荐指数
2
解决办法
5万
查看次数

传递额外参数以进行回调

我有以下功能.Wordpress功能,但这确实是一个PHP问题.他们$term根据artist_lastname每个对象元数据中的属性对对象进行排序.

我想$meta在第一个函数中传入一个字符串.这将允许我重用此代码,因为我可以将其应用于各种元数据属性.

但我不知道如何将额外的参数传递给usort回调.我试图制作一个JS风格的匿名函数,但服务器上的PHP版本太旧了,引发了语法错误.

任何帮助 - 或者向手册右上角推 - 都非常感激.谢谢!

function sort_by_term_meta($terms, $meta) 
{
  usort($terms,"term_meta_cmp");
}

function term_meta_cmp( $a, $b ) 
{
    $name_a = get_term_meta($a->term_id, 'artist_lastname', true);
    $name_b = get_term_meta($b->term_id, 'artist_lastname', true);
    return strcmp($name_a, $name_b); 
} 
Run Code Online (Sandbox Code Playgroud)

php wordpress callback usort

38
推荐指数
3
解决办法
3万
查看次数

在JavaScript中,event.isTrigger是什么?

我在一些我正在研究的JS代码中遇到过这个问题:

if ( typeof( e.isTrigger ) == 'undefined' ) {
// do some stuff            
}
Run Code Online (Sandbox Code Playgroud)

这似乎是jQuery的一部分.据我所知,它会告诉您事件是由用户发起还是自动生成.

这是正确的吗?鉴于它没有记录,有没有办法找到这样的东西,而不是落后于jQuery API的幕后?

javascript jquery

34
推荐指数
2
解决办法
1万
查看次数

在IRB中,我可以查看我之前定义的方法的来源吗?

如果我在IRB中定义一个方法,有没有办法在会话后期查看其来源?

> def my_method
>   puts "hi"
> end
Run Code Online (Sandbox Code Playgroud)

几个输出屏幕后来我希望能够写出像

> source my_method
Run Code Online (Sandbox Code Playgroud)

并回来:

=> def my_method; puts "hi"; end;
Run Code Online (Sandbox Code Playgroud)

这可能吗?

ruby irb

16
推荐指数
4
解决办法
1万
查看次数

ruby的排序方法是怎么回事?

"a"和"b"在以下代码中表示什么,以及如何<=>工作?

list = [1,2,3,4,5]
list.sort { |a,b| b <=> a }

#=> [5,4,3,2,1]
Run Code Online (Sandbox Code Playgroud)

ruby

10
推荐指数
1
解决办法
7372
查看次数

如何在没有默认凭据文件的情况下授权Google服务帐户?

我有一个Google服务帐户,我的应用可以使用该帐户从Google Analytics中检索数据.

当我创建帐户时,我下载了一个client_secrets文件,其中包含通过OAuth授权的所有必要信息,我在一个环境变量中记录了该文件的路径,该变量GOOGLE_APPLICATION_CREDENTIALS根据Google的文档进行了调用.

我现在可以得到这样一个经过身份验证的客户端:

authorization = Google::Auth.get_application_default(scopes) 
Run Code Online (Sandbox Code Playgroud)

此方法从文件中读取凭据,该凭据在本地运行,但我的应用程序托管在Heroku上,无法进行文件存储.

文档说明我可以提供此文件(不能),在官方Google服务上运行我的应用程序(不会),或者遇到错误.

如何在没有该client_secrets文件的情况下验证我的服务帐户?

ruby oauth heroku google-api-ruby-client

10
推荐指数
2
解决办法
1881
查看次数

基本元编程:使用模块扩展现有类?

我希望我的模块的一部分扩展String类.

这不起作用

module MyModule
  class String
    def exclaim
      self << "!!!!!"
    end
  end
end

include MyModule

string = "this is a string"
string.exclaim

#=> NoMethodError 
Run Code Online (Sandbox Code Playgroud)

但这样做

module MyModule
  def exclaim
    self << "!!!!!"
  end
end

class String
  include MyModule
end

string = "this is a string"
string.exclaim

#=> "this is a string!!!!!"
Run Code Online (Sandbox Code Playgroud)

我不希望MyModule的所有其他功能都被串在String中.在最高级别再次包括它似乎很难看.当然有一种更简洁的方法吗?

ruby scope metaprogramming

8
推荐指数
1
解决办法
4267
查看次数

在Rails中,为什么1.year.from_now与1.year.to_i.seconds.from_now不一样?

我可以让Rails在几秒钟内对我的计算应用相同的逻辑,就像我多年来的计算一样吗?

puts "#{1.year.from_now} | #{1.year.to_i.seconds.from_now}"
 2017-03-23 18:48:06 UTC | 2017-03-24 00:48:06 UTC
Run Code Online (Sandbox Code Playgroud)

我不明白6小时差异来自哪里.

ruby ruby-on-rails dst

8
推荐指数
1
解决办法
1532
查看次数

合法用户如何在Rails中提交无效的CSRF令牌?

我们的错误日志偶尔会包含导致ActionController::InvalidAuthenticityToken错误的合法表单提交.

我的假设是存储在用户会话cookie中的CSRF令牌在表单加载之后但在提交之前的某个时刻发生了变化.这会导致POSTed令牌与cookie中的令牌不匹配,从而导致此错误.

鉴于Rails会话cookie仅在浏览会话结束时(即当Web浏览器关闭时)到期,在不关闭浏览器的情况下,可以更改此cookie(及其包含的CSRF令牌)的方式是什么?

我们使用cookie来存储会话数据,这是Rails的默认行为.

ruby-on-rails csrf

8
推荐指数
2
解决办法
1431
查看次数

为什么Safari会导致Rails CSRF异常?Chrome不是?

我想通过iframe中的AJAX请求在我的Rails 4应用程序中创建会话.

在iframe中,我remote: true像往常一样包含了一个带有属性的新会话<%= token_tag %>的表单,并包含在表单主体和<%= csrf_meta_tags %>布局的头部.

Chrome发布此表单并创建会话没有问题.在相同条件下,Safari会导致CSRF异常.

为什么会发生这种情况,我该怎么做才能阻止它呢?据我了解,这不是CSRF必不可少的情况,因为没有会议劫持,但我仍然担心要将其关闭.

Chrome版本:31.0.1650.63

Safari版本:7.0.1

safari ajax iframe ruby-on-rails csrf

6
推荐指数
1
解决办法
2121
查看次数