Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. a "new" operator failed

a "new" operator failed

Scheduled Pinned Locked Moved C / C++ / MFC
performancequestion
5 Posts 3 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    a_matseevsky
    wrote on last edited by
    #1

    People, I met a rather strange situation. I deleted a small memory block and after it was not able to allocate another one. Operator "new" presented me with "out of memory" exception. But without previous call of "delete" "new" gave me what I asked it for (I'm talking about small blocks, something like 10KB). At that very time VirtualAlloc() successfully allocated required memory. How could it be?

    J CPalliniC 2 Replies Last reply
    0
    • A a_matseevsky

      People, I met a rather strange situation. I deleted a small memory block and after it was not able to allocate another one. Operator "new" presented me with "out of memory" exception. But without previous call of "delete" "new" gave me what I asked it for (I'm talking about small blocks, something like 10KB). At that very time VirtualAlloc() successfully allocated required memory. How could it be?

      J Offline
      J Offline
      jschell
      wrote on last edited by
      #2

      Corrupted heap springs to mind.

      A 1 Reply Last reply
      0
      • J jschell

        Corrupted heap springs to mind.

        A Offline
        A Offline
        a_matseevsky
        wrote on last edited by
        #3

        Yeah, of course I thought about it, but was not able to detect where this sorrowful situation took place. Usually when I wrote something outside of allocated memory block, I got a message when "delete" operator was called, but not now. I tried to check surrounding memory, allocated larger then I needed block, wrote canary words before and after memory that I used and found that these canary words remained intact.

        1 Reply Last reply
        0
        • A a_matseevsky

          People, I met a rather strange situation. I deleted a small memory block and after it was not able to allocate another one. Operator "new" presented me with "out of memory" exception. But without previous call of "delete" "new" gave me what I asked it for (I'm talking about small blocks, something like 10KB). At that very time VirtualAlloc() successfully allocated required memory. How could it be?

          CPalliniC Offline
          CPalliniC Offline
          CPallini
          wrote on last edited by
          #4

          Without seeing the relevant code, I'm afraid we cannot help you.

          Veni, vidi, vici.

          In testa che avete, signor di Ceprano?

          A 1 Reply Last reply
          0
          • CPalliniC CPallini

            Without seeing the relevant code, I'm afraid we cannot help you.

            Veni, vidi, vici.

            A Offline
            A Offline
            a_matseevsky
            wrote on last edited by
            #5

            Situation is worse, than I expected. Some malicious code is running at my comp. For the beginning, my Visual Studio 2005 refused to create the Project Property window and gave me something like "failed to create Net. Framework property grid". Trying to understand, why my prog refuses to open files, which it was able to open some days ago I found that in my process's address space was downloaded libraries like urlmon.dll, netapi.dll, crypt32.dll and modemInst.dll (!!!). People, I write prog which is intended to work with aerial images and I have no intention to counteract with the Net. The most interesting is the last library- it was taken not from system32 catalog, but from folder where HSPA USB Modem was placed.

            1 Reply Last reply
            0
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • World
            • Users
            • Groups