Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] gef has unwarp every members in Structural parameter in backtrace #925

Closed
1 of 9 tasks
CppXL opened this issue Dec 25, 2022 · 2 comments
Closed
1 of 9 tasks

Comments

@CppXL
Copy link

CppXL commented Dec 25, 2022

GEF+GDB version

GEF: (Standalone)
Blob Hash(/root/.gef-283690ae9bfcecbb3deb80cd275d327c46b276b5.py): 83861546049c4c1130503dd0acb802fc8383aa45
SHA256(/root/.gef-283690ae9bfcecbb3deb80cd275d327c46b276b5.py): a6b9698cdb06eefeb0a2b6ce9d31e706e75e151b4006be8d90cdcaf7f9afa1f1
GDB: 9.2
GDB-Python: 3.8

Operating System

ubuntu 2004

Describe the issue you encountered

when I use gdb with gef debug OpenImageIO library, gef has unwarp every members in Structural parameter in backtrace, but when I use bt command, It was normal in output.
gef output

bt command output

Do you read the docs and look at previously closed issues/PRs for similar cases?

No

Architecture impacted

  • X86
  • X64
  • ARM
  • ARM64
  • MIPS
  • MIPS64
  • PPC
  • PPC64
  • RISCV

Describe your issue. Without a proper reproduction step-by-step, your issue will be ignored.

Provide a step-by-step to reproduce your issue.

  1. use gdb with gef debug libOpenImageIO with debug symbol info
  2. run program, gef will unwarp every members in Structural in backtrace

Minimalist test case

Use this field for a minimal code to compile and spot the issue:

#include "include/OpenImageIO/imagebuf.h"
// #include "include/OpenImageIO/imageio.h"
#include <iostream>
using namespace OIIO;
int main(int, char **) {
  auto buf = ImageBuf("/root/oiiovuln/1.psd");
  for (auto layer = 0; layer < buf.nsubimages(); layer++) {
    // buf.reset("/root/oiiovuln/1.psd", layer);

    std::cout << buf.ymax() << std::endl;
  }
  //   auto sf = OpenImageIO_v2_3::ImageBuf("/root/oiiovuln/1.psd");
  return 0;
}

You can also provide a Dockerfile if you prefer

Additional context?

  • Screenshots
  • Callstack
  • Coredumps
  • If possible and useful, please upload the binary
@stale
Copy link

stale bot commented Feb 24, 2023

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. You can reopen it by adding a comment to this issue.

@stale stale bot added the stale label Feb 24, 2023
@hugsy
Copy link
Owner

hugsy commented Mar 5, 2023

Closing as it is not an issue: some people prefer expanding everything, some don't.
You can edit the context layout using gef config context.layout and customize to your own preference (for example just calling bt).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants